@sideboard-ai/core 0.1.307 → 0.1.308
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/{chunk-OVNIP265.js → chunk-CTFBZZGZ.js} +49 -4
- package/dist/{chunk-R5RQLKMP.js → chunk-GXFOZ5XL.js} +41 -7
- package/dist/{chunk-5SFA27CF.js → chunk-HRPSFU4Q.js} +13 -2
- package/dist/{chunk-IEOOYBYT.js → chunk-T6TEANP5.js} +21 -7
- package/dist/{conductor-ZFRXTVGP.js → conductor-E6M3BATZ.js} +1 -1
- package/dist/{conductor-YBXURAUL.js → conductor-IPIMGUR4.js} +1 -1
- package/dist/index.cjs +107 -17
- package/dist/index.d.cts +49 -1
- package/dist/index.d.ts +49 -1
- package/dist/index.js +28 -14
- package/dist/mcp/run-stdio.cjs +31 -6
- package/dist/mcp/run-stdio.js +2 -2
- package/dist/{orchestrator-MB2Q6KIR.js → orchestrator-JTDQ47H7.js} +2 -2
- package/dist/{orchestrator-XRTUGSKX.js → orchestrator-SJU5LYAO.js} +2 -2
- package/package.json +1 -1
|
@@ -1288,12 +1288,23 @@ function isAskUserToolName(name) {
|
|
|
1288
1288
|
const base = name.replace(/^mcp__sideboard__/i, "");
|
|
1289
1289
|
return ASK_USER_TOOL_RE.test(name) || /^ask_user$/i.test(base);
|
|
1290
1290
|
}
|
|
1291
|
+
function questionsFromToolPart(part) {
|
|
1292
|
+
const fromInput = parsePlanQuestionsInput(part.input);
|
|
1293
|
+
if (fromInput.length) return fromInput;
|
|
1294
|
+
const raw = part.result?.trim();
|
|
1295
|
+
if (!raw || !raw.startsWith("{")) return [];
|
|
1296
|
+
try {
|
|
1297
|
+
return parsePlanQuestionsInput(JSON.parse(raw));
|
|
1298
|
+
} catch {
|
|
1299
|
+
return [];
|
|
1300
|
+
}
|
|
1301
|
+
}
|
|
1291
1302
|
function extractPendingPlanQuestions(parts) {
|
|
1292
1303
|
if (!parts?.length) return null;
|
|
1293
1304
|
for (let i = parts.length - 1; i >= 0; i--) {
|
|
1294
1305
|
const p = parts[i];
|
|
1295
1306
|
if (p.type !== "tool" || !isAskUserToolName(p.name)) continue;
|
|
1296
|
-
const questions =
|
|
1307
|
+
const questions = questionsFromToolPart(p);
|
|
1297
1308
|
if (!questions.length) continue;
|
|
1298
1309
|
return {
|
|
1299
1310
|
id: p.id || `ask-${i}`,
|
|
@@ -1304,13 +1315,47 @@ function extractPendingPlanQuestions(parts) {
|
|
|
1304
1315
|
}
|
|
1305
1316
|
return null;
|
|
1306
1317
|
}
|
|
1318
|
+
function pendingFromAskBlock(block, dismissedQuestionSignature) {
|
|
1319
|
+
if (!block || block.source !== "ask_user" || !block.questions?.length) return null;
|
|
1320
|
+
const dismissed = dismissedQuestionSignature?.trim();
|
|
1321
|
+
if (dismissed && (!block.questionSignature || block.questionSignature === dismissed)) {
|
|
1322
|
+
return null;
|
|
1323
|
+
}
|
|
1324
|
+
const signature = block.questionSignature?.trim() || planQuestionsSignature(block.questions);
|
|
1325
|
+
return {
|
|
1326
|
+
id: `ask-block:${signature}`,
|
|
1327
|
+
signature,
|
|
1328
|
+
questions: block.questions,
|
|
1329
|
+
source: "ask_user"
|
|
1330
|
+
};
|
|
1331
|
+
}
|
|
1332
|
+
function askBlockStillWaiting(block, messages) {
|
|
1333
|
+
const askedAt = block?.at;
|
|
1334
|
+
if (!askedAt) return false;
|
|
1335
|
+
for (let i = messages.length - 1; i >= 0; i--) {
|
|
1336
|
+
const message = messages[i];
|
|
1337
|
+
if (message.role !== "user" || message.origin === "continue") continue;
|
|
1338
|
+
if (!message.ts) return true;
|
|
1339
|
+
return askedAt > message.ts;
|
|
1340
|
+
}
|
|
1341
|
+
return true;
|
|
1342
|
+
}
|
|
1307
1343
|
function latestPendingPlanQuestions(input) {
|
|
1308
1344
|
if (input.userReplied) return null;
|
|
1309
1345
|
const fromLive = extractPendingPlanQuestions(input.liveParts);
|
|
1310
1346
|
if (fromLive) return fromLive;
|
|
1311
1347
|
const last = input.messages[input.messages.length - 1];
|
|
1312
|
-
if (last?.role === "
|
|
1313
|
-
|
|
1348
|
+
if (last?.role === "agent") {
|
|
1349
|
+
const fromParts = extractPendingPlanQuestions(last.parts);
|
|
1350
|
+
if (fromParts) return fromParts;
|
|
1351
|
+
}
|
|
1352
|
+
const fromBlock = pendingFromAskBlock(
|
|
1353
|
+
input.agentBlock,
|
|
1354
|
+
input.dismissedQuestionSignature
|
|
1355
|
+
);
|
|
1356
|
+
if (fromBlock && askBlockStillWaiting(input.agentBlock, input.messages)) {
|
|
1357
|
+
return fromBlock;
|
|
1358
|
+
}
|
|
1314
1359
|
return null;
|
|
1315
1360
|
}
|
|
1316
1361
|
var PLAN_QUESTION_ANSWERS_PREFIX = "Answers to your questions:";
|
|
@@ -1778,7 +1823,7 @@ var PORT_RANGE_SIZE = 10;
|
|
|
1778
1823
|
var RECLAIM_RETRY_DELAY_MS = 40;
|
|
1779
1824
|
var RECLAIM_TRIES = 8;
|
|
1780
1825
|
async function killReclaimable(ports, worktreePath, signal) {
|
|
1781
|
-
const { killListenersOnPorts: killListenersOnPorts2, killStaleWorktreeListeners: killStaleWorktreeListeners2 } = await import("./conductor-
|
|
1826
|
+
const { killListenersOnPorts: killListenersOnPorts2, killStaleWorktreeListeners: killStaleWorktreeListeners2 } = await import("./conductor-IPIMGUR4.js");
|
|
1782
1827
|
if (worktreePath) killStaleWorktreeListeners2(ports, worktreePath, signal);
|
|
1783
1828
|
else killListenersOnPorts2(ports);
|
|
1784
1829
|
}
|
|
@@ -55,7 +55,7 @@ import {
|
|
|
55
55
|
worktreeDevProcessKey,
|
|
56
56
|
worktreeRunProcessKey,
|
|
57
57
|
worktreeSetupProcessKey
|
|
58
|
-
} from "./chunk-
|
|
58
|
+
} from "./chunk-CTFBZZGZ.js";
|
|
59
59
|
import {
|
|
60
60
|
applyAgentEvent,
|
|
61
61
|
clipAgentEventForPaint,
|
|
@@ -1654,6 +1654,23 @@ function worktreeAgentBlock(group) {
|
|
|
1654
1654
|
}
|
|
1655
1655
|
return best;
|
|
1656
1656
|
}
|
|
1657
|
+
function sidebarRowAgentBlock(group, opts) {
|
|
1658
|
+
if (opts.active) {
|
|
1659
|
+
const open = group.find((thread) => thread.id === opts.selectedId);
|
|
1660
|
+
if (open) return visibleAgentBlock(open);
|
|
1661
|
+
}
|
|
1662
|
+
return worktreeAgentBlock(group);
|
|
1663
|
+
}
|
|
1664
|
+
function sidebarParentSelectId(group, primaryId, opts) {
|
|
1665
|
+
if (opts.active) return primaryId;
|
|
1666
|
+
return sidebarQuestionThreadId(group, primaryId);
|
|
1667
|
+
}
|
|
1668
|
+
function sidebarQuestionThreadId(group, primaryId) {
|
|
1669
|
+
const block = worktreeAgentBlock(group);
|
|
1670
|
+
if (!block) return primaryId;
|
|
1671
|
+
const owner = group.find((thread) => visibleAgentBlock(thread) === block);
|
|
1672
|
+
return owner?.id ?? primaryId;
|
|
1673
|
+
}
|
|
1657
1674
|
function threadCardBlockFields(group) {
|
|
1658
1675
|
const block = worktreeAgentBlock(group);
|
|
1659
1676
|
return block ? { blockedReason: block.reason, blockedSource: block.source } : null;
|
|
@@ -1800,7 +1817,7 @@ function decisionBlockFromParts(parts, planMode, at = (/* @__PURE__ */ new Date(
|
|
|
1800
1817
|
const reason = pending ? formatAskUserNotifyMessage(pending.questions) : "Waiting for an answer in that chat.";
|
|
1801
1818
|
return {
|
|
1802
1819
|
...makeAgentBlock("ask_user", reason, at),
|
|
1803
|
-
...pending ? { questionSignature: pending.signature } : {}
|
|
1820
|
+
...pending ? { questionSignature: pending.signature, questions: pending.questions } : {}
|
|
1804
1821
|
};
|
|
1805
1822
|
}
|
|
1806
1823
|
if (!planMode || last?.type !== "tool") return null;
|
|
@@ -1815,14 +1832,24 @@ function decisionBlockFromParts(parts, planMode, at = (/* @__PURE__ */ new Date(
|
|
|
1815
1832
|
at
|
|
1816
1833
|
);
|
|
1817
1834
|
}
|
|
1835
|
+
function withStampedQuestions(decision, existing) {
|
|
1836
|
+
if (decision.source !== "ask_user" || decision.questions?.length) return decision;
|
|
1837
|
+
if (existing?.source !== "ask_user" || !existing.questions?.length) return decision;
|
|
1838
|
+
return {
|
|
1839
|
+
...decision,
|
|
1840
|
+
questions: existing.questions,
|
|
1841
|
+
questionSignature: decision.questionSignature ?? existing.questionSignature
|
|
1842
|
+
};
|
|
1843
|
+
}
|
|
1818
1844
|
function agentBlockAfterTurn(input) {
|
|
1819
1845
|
if (input.failed) return null;
|
|
1820
1846
|
const decision = decisionBlockFromParts(input.parts, input.planMode);
|
|
1821
1847
|
if (decision) {
|
|
1822
|
-
|
|
1848
|
+
const next = withStampedQuestions(decision, input.existing);
|
|
1849
|
+
if (isDismissedAskUserBlock(next, input.dismissedQuestionSignature)) {
|
|
1823
1850
|
return input.existing?.source === "reported" ? input.existing : null;
|
|
1824
1851
|
}
|
|
1825
|
-
return
|
|
1852
|
+
return next;
|
|
1826
1853
|
}
|
|
1827
1854
|
if (input.existing && input.existing.source !== "reported" && lastTopLevelTool(input.parts)) {
|
|
1828
1855
|
return null;
|
|
@@ -1865,7 +1892,7 @@ function settleAgentBlock(threadId, parts, failed) {
|
|
|
1865
1892
|
});
|
|
1866
1893
|
const prev = thread.agentBlock ?? null;
|
|
1867
1894
|
if (prev === next) return;
|
|
1868
|
-
if (prev && next && prev.source === next.source && prev.reason === next.reason && prev.at === next.at && prev.questionSignature === next.questionSignature) {
|
|
1895
|
+
if (prev && next && prev.source === next.source && prev.reason === next.reason && prev.at === next.at && prev.questionSignature === next.questionSignature && planQuestionsSignature(prev.questions ?? []) === planQuestionsSignature(next.questions ?? [])) {
|
|
1869
1896
|
return;
|
|
1870
1897
|
}
|
|
1871
1898
|
updateThread(threadId, { agentBlock: next });
|
|
@@ -1888,7 +1915,11 @@ function stampAskUserBlock(resolveCaller, questions) {
|
|
|
1888
1915
|
try {
|
|
1889
1916
|
writeAgentBlock(
|
|
1890
1917
|
resolveCaller().id,
|
|
1891
|
-
parsed.length ? {
|
|
1918
|
+
parsed.length ? {
|
|
1919
|
+
...block,
|
|
1920
|
+
questionSignature: planQuestionsSignature(parsed),
|
|
1921
|
+
questions: parsed
|
|
1922
|
+
} : block
|
|
1892
1923
|
);
|
|
1893
1924
|
} catch {
|
|
1894
1925
|
}
|
|
@@ -6710,7 +6741,7 @@ function formatScheduledPrompt(name, prompt) {
|
|
|
6710
6741
|
${prompt}`;
|
|
6711
6742
|
}
|
|
6712
6743
|
async function defaultDeps() {
|
|
6713
|
-
const { getOrchestrator: getOrchestrator2, startOrchestration: startOrchestration2 } = await import("./orchestrator-
|
|
6744
|
+
const { getOrchestrator: getOrchestrator2, startOrchestration: startOrchestration2 } = await import("./orchestrator-SJU5LYAO.js");
|
|
6714
6745
|
const orch = getOrchestrator2();
|
|
6715
6746
|
return {
|
|
6716
6747
|
findThread: (id) => findThreadByRef(id),
|
|
@@ -9621,6 +9652,9 @@ export {
|
|
|
9621
9652
|
worktreeBoardStatus,
|
|
9622
9653
|
visibleAgentBlock,
|
|
9623
9654
|
worktreeAgentBlock,
|
|
9655
|
+
sidebarRowAgentBlock,
|
|
9656
|
+
sidebarParentSelectId,
|
|
9657
|
+
sidebarQuestionThreadId,
|
|
9624
9658
|
reviewLabelForRepo,
|
|
9625
9659
|
classifyWorktreeListBadges,
|
|
9626
9660
|
isHomeBoardThread,
|
|
@@ -1235,12 +1235,23 @@ function isAskUserToolName(name) {
|
|
|
1235
1235
|
const base = name.replace(/^mcp__sideboard__/i, "");
|
|
1236
1236
|
return ASK_USER_TOOL_RE.test(name) || /^ask_user$/i.test(base);
|
|
1237
1237
|
}
|
|
1238
|
+
function questionsFromToolPart(part) {
|
|
1239
|
+
const fromInput = parsePlanQuestionsInput(part.input);
|
|
1240
|
+
if (fromInput.length) return fromInput;
|
|
1241
|
+
const raw = part.result?.trim();
|
|
1242
|
+
if (!raw || !raw.startsWith("{")) return [];
|
|
1243
|
+
try {
|
|
1244
|
+
return parsePlanQuestionsInput(JSON.parse(raw));
|
|
1245
|
+
} catch {
|
|
1246
|
+
return [];
|
|
1247
|
+
}
|
|
1248
|
+
}
|
|
1238
1249
|
function extractPendingPlanQuestions(parts) {
|
|
1239
1250
|
if (!parts?.length) return null;
|
|
1240
1251
|
for (let i = parts.length - 1; i >= 0; i--) {
|
|
1241
1252
|
const p = parts[i];
|
|
1242
1253
|
if (p.type !== "tool" || !isAskUserToolName(p.name)) continue;
|
|
1243
|
-
const questions =
|
|
1254
|
+
const questions = questionsFromToolPart(p);
|
|
1244
1255
|
if (!questions.length) continue;
|
|
1245
1256
|
return {
|
|
1246
1257
|
id: p.id || `ask-${i}`,
|
|
@@ -1676,7 +1687,7 @@ var PORT_RANGE_SIZE = 10;
|
|
|
1676
1687
|
var RECLAIM_RETRY_DELAY_MS = 40;
|
|
1677
1688
|
var RECLAIM_TRIES = 8;
|
|
1678
1689
|
async function killReclaimable(ports, worktreePath, signal) {
|
|
1679
|
-
const { killListenersOnPorts: killListenersOnPorts2, killStaleWorktreeListeners: killStaleWorktreeListeners2 } = await import("./conductor-
|
|
1690
|
+
const { killListenersOnPorts: killListenersOnPorts2, killStaleWorktreeListeners: killStaleWorktreeListeners2 } = await import("./conductor-E6M3BATZ.js");
|
|
1680
1691
|
if (worktreePath) killStaleWorktreeListeners2(ports, worktreePath, signal);
|
|
1681
1692
|
else killListenersOnPorts2(ports);
|
|
1682
1693
|
}
|
|
@@ -68,7 +68,7 @@ import {
|
|
|
68
68
|
worktreeDevProcessKey,
|
|
69
69
|
worktreeRunProcessKey,
|
|
70
70
|
worktreeSetupProcessKey
|
|
71
|
-
} from "./chunk-
|
|
71
|
+
} from "./chunk-HRPSFU4Q.js";
|
|
72
72
|
import {
|
|
73
73
|
applyAgentEvent,
|
|
74
74
|
clipAgentEventForPaint,
|
|
@@ -1703,7 +1703,7 @@ function decisionBlockFromParts(parts, planMode, at = (/* @__PURE__ */ new Date(
|
|
|
1703
1703
|
const reason = pending ? formatAskUserNotifyMessage(pending.questions) : "Waiting for an answer in that chat.";
|
|
1704
1704
|
return {
|
|
1705
1705
|
...makeAgentBlock("ask_user", reason, at),
|
|
1706
|
-
...pending ? { questionSignature: pending.signature } : {}
|
|
1706
|
+
...pending ? { questionSignature: pending.signature, questions: pending.questions } : {}
|
|
1707
1707
|
};
|
|
1708
1708
|
}
|
|
1709
1709
|
if (!planMode || last?.type !== "tool") return null;
|
|
@@ -1718,14 +1718,24 @@ function decisionBlockFromParts(parts, planMode, at = (/* @__PURE__ */ new Date(
|
|
|
1718
1718
|
at
|
|
1719
1719
|
);
|
|
1720
1720
|
}
|
|
1721
|
+
function withStampedQuestions(decision, existing) {
|
|
1722
|
+
if (decision.source !== "ask_user" || decision.questions?.length) return decision;
|
|
1723
|
+
if (existing?.source !== "ask_user" || !existing.questions?.length) return decision;
|
|
1724
|
+
return {
|
|
1725
|
+
...decision,
|
|
1726
|
+
questions: existing.questions,
|
|
1727
|
+
questionSignature: decision.questionSignature ?? existing.questionSignature
|
|
1728
|
+
};
|
|
1729
|
+
}
|
|
1721
1730
|
function agentBlockAfterTurn(input) {
|
|
1722
1731
|
if (input.failed) return null;
|
|
1723
1732
|
const decision = decisionBlockFromParts(input.parts, input.planMode);
|
|
1724
1733
|
if (decision) {
|
|
1725
|
-
|
|
1734
|
+
const next = withStampedQuestions(decision, input.existing);
|
|
1735
|
+
if (isDismissedAskUserBlock(next, input.dismissedQuestionSignature)) {
|
|
1726
1736
|
return input.existing?.source === "reported" ? input.existing : null;
|
|
1727
1737
|
}
|
|
1728
|
-
return
|
|
1738
|
+
return next;
|
|
1729
1739
|
}
|
|
1730
1740
|
if (input.existing && input.existing.source !== "reported" && lastTopLevelTool(input.parts)) {
|
|
1731
1741
|
return null;
|
|
@@ -1768,7 +1778,7 @@ function settleAgentBlock(threadId, parts, failed) {
|
|
|
1768
1778
|
});
|
|
1769
1779
|
const prev = thread.agentBlock ?? null;
|
|
1770
1780
|
if (prev === next) return;
|
|
1771
|
-
if (prev && next && prev.source === next.source && prev.reason === next.reason && prev.at === next.at && prev.questionSignature === next.questionSignature) {
|
|
1781
|
+
if (prev && next && prev.source === next.source && prev.reason === next.reason && prev.at === next.at && prev.questionSignature === next.questionSignature && planQuestionsSignature(prev.questions ?? []) === planQuestionsSignature(next.questions ?? [])) {
|
|
1772
1782
|
return;
|
|
1773
1783
|
}
|
|
1774
1784
|
updateThread(threadId, { agentBlock: next });
|
|
@@ -1791,7 +1801,11 @@ function stampAskUserBlock(resolveCaller, questions) {
|
|
|
1791
1801
|
try {
|
|
1792
1802
|
writeAgentBlock(
|
|
1793
1803
|
resolveCaller().id,
|
|
1794
|
-
parsed.length ? {
|
|
1804
|
+
parsed.length ? {
|
|
1805
|
+
...block,
|
|
1806
|
+
questionSignature: planQuestionsSignature(parsed),
|
|
1807
|
+
questions: parsed
|
|
1808
|
+
} : block
|
|
1795
1809
|
);
|
|
1796
1810
|
} catch {
|
|
1797
1811
|
}
|
|
@@ -6375,7 +6389,7 @@ function formatScheduledPrompt(name, prompt) {
|
|
|
6375
6389
|
${prompt}`;
|
|
6376
6390
|
}
|
|
6377
6391
|
async function defaultDeps() {
|
|
6378
|
-
const { getOrchestrator: getOrchestrator2, startOrchestration: startOrchestration2 } = await import("./orchestrator-
|
|
6392
|
+
const { getOrchestrator: getOrchestrator2, startOrchestration: startOrchestration2 } = await import("./orchestrator-JTDQ47H7.js");
|
|
6379
6393
|
const orch = getOrchestrator2();
|
|
6380
6394
|
return {
|
|
6381
6395
|
findThread: (id) => findThreadByRef(id),
|
package/dist/index.cjs
CHANGED
|
@@ -6746,6 +6746,23 @@ function worktreeAgentBlock(group) {
|
|
|
6746
6746
|
}
|
|
6747
6747
|
return best;
|
|
6748
6748
|
}
|
|
6749
|
+
function sidebarRowAgentBlock(group, opts) {
|
|
6750
|
+
if (opts.active) {
|
|
6751
|
+
const open = group.find((thread) => thread.id === opts.selectedId);
|
|
6752
|
+
if (open) return visibleAgentBlock(open);
|
|
6753
|
+
}
|
|
6754
|
+
return worktreeAgentBlock(group);
|
|
6755
|
+
}
|
|
6756
|
+
function sidebarParentSelectId(group, primaryId, opts) {
|
|
6757
|
+
if (opts.active) return primaryId;
|
|
6758
|
+
return sidebarQuestionThreadId(group, primaryId);
|
|
6759
|
+
}
|
|
6760
|
+
function sidebarQuestionThreadId(group, primaryId) {
|
|
6761
|
+
const block = worktreeAgentBlock(group);
|
|
6762
|
+
if (!block) return primaryId;
|
|
6763
|
+
const owner = group.find((thread) => visibleAgentBlock(thread) === block);
|
|
6764
|
+
return owner?.id ?? primaryId;
|
|
6765
|
+
}
|
|
6749
6766
|
function threadCardBlockFields(group) {
|
|
6750
6767
|
const block = worktreeAgentBlock(group);
|
|
6751
6768
|
return block ? { blockedReason: block.reason, blockedSource: block.source } : null;
|
|
@@ -8339,12 +8356,23 @@ function isAskUserToolName(name) {
|
|
|
8339
8356
|
const base = name.replace(/^mcp__sideboard__/i, "");
|
|
8340
8357
|
return ASK_USER_TOOL_RE.test(name) || /^ask_user$/i.test(base);
|
|
8341
8358
|
}
|
|
8359
|
+
function questionsFromToolPart(part) {
|
|
8360
|
+
const fromInput = parsePlanQuestionsInput(part.input);
|
|
8361
|
+
if (fromInput.length) return fromInput;
|
|
8362
|
+
const raw = part.result?.trim();
|
|
8363
|
+
if (!raw || !raw.startsWith("{")) return [];
|
|
8364
|
+
try {
|
|
8365
|
+
return parsePlanQuestionsInput(JSON.parse(raw));
|
|
8366
|
+
} catch {
|
|
8367
|
+
return [];
|
|
8368
|
+
}
|
|
8369
|
+
}
|
|
8342
8370
|
function extractPendingPlanQuestions(parts) {
|
|
8343
8371
|
if (!parts?.length) return null;
|
|
8344
8372
|
for (let i = parts.length - 1; i >= 0; i--) {
|
|
8345
8373
|
const p = parts[i];
|
|
8346
8374
|
if (p.type !== "tool" || !isAskUserToolName(p.name)) continue;
|
|
8347
|
-
const questions2 =
|
|
8375
|
+
const questions2 = questionsFromToolPart(p);
|
|
8348
8376
|
if (!questions2.length) continue;
|
|
8349
8377
|
return {
|
|
8350
8378
|
id: p.id || `ask-${i}`,
|
|
@@ -8355,13 +8383,47 @@ function extractPendingPlanQuestions(parts) {
|
|
|
8355
8383
|
}
|
|
8356
8384
|
return null;
|
|
8357
8385
|
}
|
|
8386
|
+
function pendingFromAskBlock(block, dismissedQuestionSignature) {
|
|
8387
|
+
if (!block || block.source !== "ask_user" || !block.questions?.length) return null;
|
|
8388
|
+
const dismissed = dismissedQuestionSignature?.trim();
|
|
8389
|
+
if (dismissed && (!block.questionSignature || block.questionSignature === dismissed)) {
|
|
8390
|
+
return null;
|
|
8391
|
+
}
|
|
8392
|
+
const signature = block.questionSignature?.trim() || planQuestionsSignature(block.questions);
|
|
8393
|
+
return {
|
|
8394
|
+
id: `ask-block:${signature}`,
|
|
8395
|
+
signature,
|
|
8396
|
+
questions: block.questions,
|
|
8397
|
+
source: "ask_user"
|
|
8398
|
+
};
|
|
8399
|
+
}
|
|
8400
|
+
function askBlockStillWaiting(block, messages) {
|
|
8401
|
+
const askedAt = block?.at;
|
|
8402
|
+
if (!askedAt) return false;
|
|
8403
|
+
for (let i = messages.length - 1; i >= 0; i--) {
|
|
8404
|
+
const message = messages[i];
|
|
8405
|
+
if (message.role !== "user" || message.origin === "continue") continue;
|
|
8406
|
+
if (!message.ts) return true;
|
|
8407
|
+
return askedAt > message.ts;
|
|
8408
|
+
}
|
|
8409
|
+
return true;
|
|
8410
|
+
}
|
|
8358
8411
|
function latestPendingPlanQuestions(input) {
|
|
8359
8412
|
if (input.userReplied) return null;
|
|
8360
8413
|
const fromLive = extractPendingPlanQuestions(input.liveParts);
|
|
8361
8414
|
if (fromLive) return fromLive;
|
|
8362
8415
|
const last = input.messages[input.messages.length - 1];
|
|
8363
|
-
if (last?.role === "
|
|
8364
|
-
|
|
8416
|
+
if (last?.role === "agent") {
|
|
8417
|
+
const fromParts = extractPendingPlanQuestions(last.parts);
|
|
8418
|
+
if (fromParts) return fromParts;
|
|
8419
|
+
}
|
|
8420
|
+
const fromBlock = pendingFromAskBlock(
|
|
8421
|
+
input.agentBlock,
|
|
8422
|
+
input.dismissedQuestionSignature
|
|
8423
|
+
);
|
|
8424
|
+
if (fromBlock && askBlockStillWaiting(input.agentBlock, input.messages)) {
|
|
8425
|
+
return fromBlock;
|
|
8426
|
+
}
|
|
8365
8427
|
return null;
|
|
8366
8428
|
}
|
|
8367
8429
|
function isPlanQuestionAnswersMessage(text7) {
|
|
@@ -22161,7 +22223,7 @@ function decisionBlockFromParts(parts, planMode, at = (/* @__PURE__ */ new Date(
|
|
|
22161
22223
|
const reason = pending ? formatAskUserNotifyMessage(pending.questions) : "Waiting for an answer in that chat.";
|
|
22162
22224
|
return {
|
|
22163
22225
|
...makeAgentBlock("ask_user", reason, at),
|
|
22164
|
-
...pending ? { questionSignature: pending.signature } : {}
|
|
22226
|
+
...pending ? { questionSignature: pending.signature, questions: pending.questions } : {}
|
|
22165
22227
|
};
|
|
22166
22228
|
}
|
|
22167
22229
|
if (!planMode || last?.type !== "tool") return null;
|
|
@@ -22176,14 +22238,24 @@ function decisionBlockFromParts(parts, planMode, at = (/* @__PURE__ */ new Date(
|
|
|
22176
22238
|
at
|
|
22177
22239
|
);
|
|
22178
22240
|
}
|
|
22241
|
+
function withStampedQuestions(decision, existing) {
|
|
22242
|
+
if (decision.source !== "ask_user" || decision.questions?.length) return decision;
|
|
22243
|
+
if (existing?.source !== "ask_user" || !existing.questions?.length) return decision;
|
|
22244
|
+
return {
|
|
22245
|
+
...decision,
|
|
22246
|
+
questions: existing.questions,
|
|
22247
|
+
questionSignature: decision.questionSignature ?? existing.questionSignature
|
|
22248
|
+
};
|
|
22249
|
+
}
|
|
22179
22250
|
function agentBlockAfterTurn(input) {
|
|
22180
22251
|
if (input.failed) return null;
|
|
22181
22252
|
const decision = decisionBlockFromParts(input.parts, input.planMode);
|
|
22182
22253
|
if (decision) {
|
|
22183
|
-
|
|
22254
|
+
const next = withStampedQuestions(decision, input.existing);
|
|
22255
|
+
if (isDismissedAskUserBlock(next, input.dismissedQuestionSignature)) {
|
|
22184
22256
|
return input.existing?.source === "reported" ? input.existing : null;
|
|
22185
22257
|
}
|
|
22186
|
-
return
|
|
22258
|
+
return next;
|
|
22187
22259
|
}
|
|
22188
22260
|
if (input.existing && input.existing.source !== "reported" && lastTopLevelTool(input.parts)) {
|
|
22189
22261
|
return null;
|
|
@@ -22226,7 +22298,7 @@ function settleAgentBlock(threadId, parts, failed) {
|
|
|
22226
22298
|
});
|
|
22227
22299
|
const prev = thread.agentBlock ?? null;
|
|
22228
22300
|
if (prev === next) return;
|
|
22229
|
-
if (prev && next && prev.source === next.source && prev.reason === next.reason && prev.at === next.at && prev.questionSignature === next.questionSignature) {
|
|
22301
|
+
if (prev && next && prev.source === next.source && prev.reason === next.reason && prev.at === next.at && prev.questionSignature === next.questionSignature && planQuestionsSignature(prev.questions ?? []) === planQuestionsSignature(next.questions ?? [])) {
|
|
22230
22302
|
return;
|
|
22231
22303
|
}
|
|
22232
22304
|
updateThread(threadId, { agentBlock: next });
|
|
@@ -22249,7 +22321,11 @@ function stampAskUserBlock(resolveCaller, questions2) {
|
|
|
22249
22321
|
try {
|
|
22250
22322
|
writeAgentBlock(
|
|
22251
22323
|
resolveCaller().id,
|
|
22252
|
-
parsed.length ? {
|
|
22324
|
+
parsed.length ? {
|
|
22325
|
+
...block,
|
|
22326
|
+
questionSignature: planQuestionsSignature(parsed),
|
|
22327
|
+
questions: parsed
|
|
22328
|
+
} : block
|
|
22253
22329
|
);
|
|
22254
22330
|
} catch {
|
|
22255
22331
|
}
|
|
@@ -32751,6 +32827,9 @@ __export(index_exports, {
|
|
|
32751
32827
|
shouldRunWorktreeCleanup: () => shouldRunWorktreeCleanup,
|
|
32752
32828
|
shouldStampSetupLastError: () => shouldStampSetupLastError,
|
|
32753
32829
|
showCostEnabled: () => showCostEnabled,
|
|
32830
|
+
sidebarParentSelectId: () => sidebarParentSelectId,
|
|
32831
|
+
sidebarQuestionThreadId: () => sidebarQuestionThreadId,
|
|
32832
|
+
sidebarRowAgentBlock: () => sidebarRowAgentBlock,
|
|
32754
32833
|
sideboardHomeDir: () => sideboardHomeDir,
|
|
32755
32834
|
sideboardMcpProfile: () => sideboardMcpProfile,
|
|
32756
32835
|
sideboardReposDir: () => sideboardReposDir,
|
|
@@ -35072,10 +35151,12 @@ function emitChatTurn(opts, chatId, threadId) {
|
|
|
35072
35151
|
return;
|
|
35073
35152
|
}
|
|
35074
35153
|
const result = getOrchestrator().getTurnResult(thread.id);
|
|
35075
|
-
const pending =
|
|
35076
|
-
|
|
35077
|
-
|
|
35078
|
-
|
|
35154
|
+
const pending = latestPendingPlanQuestions({
|
|
35155
|
+
messages: thread.messages,
|
|
35156
|
+
agentBlock: thread.agentBlock,
|
|
35157
|
+
dismissedQuestionSignature: thread.dismissedQuestionSignature
|
|
35158
|
+
});
|
|
35159
|
+
if (pending && result.taskState !== "failed" && result.taskState !== "canceled" && (result.taskState === "input-required" || thread.agentBlock?.source === "ask_user")) {
|
|
35079
35160
|
emitControl(opts, {
|
|
35080
35161
|
op: "ask",
|
|
35081
35162
|
chatId,
|
|
@@ -35442,7 +35523,11 @@ init_ask_user();
|
|
|
35442
35523
|
function republishPendingAsk(opts, chatId) {
|
|
35443
35524
|
const thread = readPhoneThread(chatId);
|
|
35444
35525
|
if (!thread) return;
|
|
35445
|
-
const pending = latestPendingPlanQuestions({
|
|
35526
|
+
const pending = latestPendingPlanQuestions({
|
|
35527
|
+
messages: thread.messages,
|
|
35528
|
+
agentBlock: thread.agentBlock,
|
|
35529
|
+
dismissedQuestionSignature: thread.dismissedQuestionSignature
|
|
35530
|
+
});
|
|
35446
35531
|
if (!pending) return;
|
|
35447
35532
|
emitControl(opts, {
|
|
35448
35533
|
op: "ask",
|
|
@@ -37701,10 +37786,12 @@ function runCoordinatorPrompt(opts, body, generation) {
|
|
|
37701
37786
|
thread = readThread(thread.id) ?? thread;
|
|
37702
37787
|
if (thread.status === "stopped") return;
|
|
37703
37788
|
const result = orch.getTurnResult(thread.id);
|
|
37704
|
-
const pending =
|
|
37705
|
-
|
|
37706
|
-
|
|
37707
|
-
|
|
37789
|
+
const pending = latestPendingPlanQuestions({
|
|
37790
|
+
messages: thread.messages,
|
|
37791
|
+
agentBlock: thread.agentBlock,
|
|
37792
|
+
dismissedQuestionSignature: thread.dismissedQuestionSignature
|
|
37793
|
+
});
|
|
37794
|
+
if (pending && result.taskState !== "failed" && result.taskState !== "canceled" && (result.taskState === "input-required" || thread.agentBlock?.source === "ask_user")) {
|
|
37708
37795
|
opts.onOutbound({
|
|
37709
37796
|
type: "ask_user",
|
|
37710
37797
|
text: result.text.trim(),
|
|
@@ -47600,6 +47687,9 @@ async function pollSlackOutboundWatches(opts) {
|
|
|
47600
47687
|
shouldRunWorktreeCleanup,
|
|
47601
47688
|
shouldStampSetupLastError,
|
|
47602
47689
|
showCostEnabled,
|
|
47690
|
+
sidebarParentSelectId,
|
|
47691
|
+
sidebarQuestionThreadId,
|
|
47692
|
+
sidebarRowAgentBlock,
|
|
47603
47693
|
sideboardHomeDir,
|
|
47604
47694
|
sideboardMcpProfile,
|
|
47605
47695
|
sideboardReposDir,
|
package/dist/index.d.cts
CHANGED
|
@@ -31,6 +31,20 @@ interface AgentBlock {
|
|
|
31
31
|
at: string;
|
|
32
32
|
/** ask_user question-set signature, so a skip can drop this highlight. */
|
|
33
33
|
questionSignature?: string;
|
|
34
|
+
/**
|
|
35
|
+
* Full ask_user payload. The composer reads this when the transcript
|
|
36
|
+
* tool call never stored its input, so the sidebar highlight and the
|
|
37
|
+
* chat picker stay the same question.
|
|
38
|
+
*/
|
|
39
|
+
questions?: Array<{
|
|
40
|
+
question: string;
|
|
41
|
+
header?: string;
|
|
42
|
+
multiSelect?: boolean;
|
|
43
|
+
options: Array<{
|
|
44
|
+
label: string;
|
|
45
|
+
description?: string;
|
|
46
|
+
}>;
|
|
47
|
+
}>;
|
|
34
48
|
permission?: AgentPermissionPrompt;
|
|
35
49
|
}
|
|
36
50
|
|
|
@@ -6378,10 +6392,19 @@ type ToolPartLike = {
|
|
|
6378
6392
|
id?: string;
|
|
6379
6393
|
name?: string;
|
|
6380
6394
|
input?: Record<string, unknown>;
|
|
6395
|
+
/** Tool result text. ask_user echoes the questions here when input was empty. */
|
|
6396
|
+
result?: string;
|
|
6381
6397
|
status?: string;
|
|
6382
6398
|
};
|
|
6383
6399
|
/** Newest ask-user tool part with parseable questions (live or persisted). */
|
|
6384
6400
|
declare function extractPendingPlanQuestions(parts: ToolPartLike[] | undefined | null): PendingPlanQuestions | null;
|
|
6401
|
+
/** Sidebar ask_user highlight, including questions stamped at call time. */
|
|
6402
|
+
interface AskBlockSnapshot {
|
|
6403
|
+
source?: string;
|
|
6404
|
+
at?: string;
|
|
6405
|
+
questionSignature?: string;
|
|
6406
|
+
questions?: PlanQuestion[];
|
|
6407
|
+
}
|
|
6385
6408
|
/**
|
|
6386
6409
|
* Questions still waiting on the user. After they reply (composer picker or
|
|
6387
6410
|
* a normal chat message — persisted or in-flight), this is null so the panel
|
|
@@ -6391,10 +6414,18 @@ declare function latestPendingPlanQuestions(input: {
|
|
|
6391
6414
|
messages: Array<{
|
|
6392
6415
|
role: string;
|
|
6393
6416
|
parts?: ToolPartLike[];
|
|
6417
|
+
ts?: string;
|
|
6418
|
+
origin?: string;
|
|
6394
6419
|
}>;
|
|
6395
6420
|
liveParts?: ToolPartLike[] | null;
|
|
6396
6421
|
/** Optimistic user send not yet in `messages`. */
|
|
6397
6422
|
userReplied?: boolean;
|
|
6423
|
+
/**
|
|
6424
|
+
* Sidebar highlight. The chat picker uses it when the transcript tool
|
|
6425
|
+
* call is missing or stored its result without the original input.
|
|
6426
|
+
*/
|
|
6427
|
+
agentBlock?: AskBlockSnapshot | null;
|
|
6428
|
+
dismissedQuestionSignature?: string | null;
|
|
6398
6429
|
}): PendingPlanQuestions | null;
|
|
6399
6430
|
interface PlanQuestionAnswer {
|
|
6400
6431
|
questionIndex: number;
|
|
@@ -6698,6 +6729,23 @@ declare function visibleAgentBlock(thread: Pick<Thread, 'status' | 'agentBlock'
|
|
|
6698
6729
|
* Herdr uses so the row that needs a decision is the one you see.
|
|
6699
6730
|
*/
|
|
6700
6731
|
declare function worktreeAgentBlock(group: Array<Pick<Thread, 'status' | 'agentBlock' | 'dismissedQuestionSignature'>>): AgentBlock | null;
|
|
6732
|
+
/**
|
|
6733
|
+
* Reason on the worktree parent row. While one of its chats is open, the
|
|
6734
|
+
* row matches that chat — a sibling's question must not sit in the sidebar
|
|
6735
|
+
* after you have switched agents. Closed rows still roll up the group.
|
|
6736
|
+
*/
|
|
6737
|
+
declare function sidebarRowAgentBlock(group: Array<Pick<Thread, 'id' | 'status' | 'agentBlock' | 'dismissedQuestionSignature'>>, opts: {
|
|
6738
|
+
active: boolean;
|
|
6739
|
+
selectedId: string | null;
|
|
6740
|
+
}): AgentBlock | null;
|
|
6741
|
+
/**
|
|
6742
|
+
* Closed worktree rows open the chat that asked. An already-open row keeps
|
|
6743
|
+
* the selected chat — the parent is no longer showing a sibling's question.
|
|
6744
|
+
*/
|
|
6745
|
+
declare function sidebarParentSelectId(group: Array<Pick<Thread, 'id' | 'status' | 'agentBlock' | 'dismissedQuestionSignature'>>, primaryId: string, opts: {
|
|
6746
|
+
active: boolean;
|
|
6747
|
+
}): string;
|
|
6748
|
+
declare function sidebarQuestionThreadId(group: Array<Pick<Thread, 'id' | 'status' | 'agentBlock' | 'dismissedQuestionSignature'>>, primaryId: string): string;
|
|
6701
6749
|
|
|
6702
6750
|
/**
|
|
6703
6751
|
* Home Kanban work item — every worktree checkout, however it was created
|
|
@@ -8631,4 +8679,4 @@ declare function pollSlackOutboundWatches(opts?: {
|
|
|
8631
8679
|
now?: number;
|
|
8632
8680
|
}): Promise<void>;
|
|
8633
8681
|
|
|
8634
|
-
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 AgentBlock, type AgentBlockSource, type AgentDoneCustomSoundPayload, type AgentDoneSound, type AgentEvent, type AgentGitAction, type AgentKind, type AgentModelCatalog, type AgentModelInfo, type AgentPermissionPrompt, 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_POSTHOG_CONNECTOR_ALLOWED_TOOLS, 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 GitHubProject, type GitHubProjectRef, 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 McpUiView, type MessagePart, type NextManagedAccount, type NotifyOrchestratorReason, type NotifyOrchestratorResult, OPTIONAL_SERVICES, OPTIONAL_SERVICE_IDS, ORCHESTRATOR_AGENT_KINDS, type OpenPrStackLayersInput, type OpenStackLayerInput, type OpenStackLayerResult, type OptionalCliPresence, 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 RelayAccountProvider, type RelayServerHandle, type RelayServerOptions, type RemoteAccountSession, 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 SteerRequest, 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 WorkspaceTagMode, 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, answerToolPermission, appDataDir, appSettingsPath, appendCompactedMessages, appendIndexedGitConfig, appendMessage, appendQueuedItem, applyAgentEvent, applyAgentRunnerHeapEnv, applyAppEnvironment, applyCompaction, applyForwardOccupancy, applyGithubGitAuthEnv, applyManagedAccountEnv, applyPromptCacheTtlEnv, applySystemCaEnv, applyThreadIntoMain, applyTurnUsage, applyWorkspaceTags, archiveRemovedWorkspaceChats, archivesWithRemovedWorkspace, 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, claudeSubagentTurnReminder, claudeUsageOverLimitWindows, claudeUserSettingsPath, cleanupArchivedHistory, cleanupOrphanWorktrees, clearAgentDoneCustomSoundFile, clearBoardPins, clearHomeBoardCache, clearOptionalCliPresenceCache, clipAgentEventForPaint, clipThinkingForStore, cloneRepoIntoSideboard, closeMcpUiHost, codeRefRangeLabel, codexAdapter, codexSandboxWritableRootsArgs, codexUnattendedGitConfigArgs, coerceOrchestratorAgent, collectTakenTeamSlugs, commandLooksLikeElectron, commentAbleTimeTask, commentGitHubIssue, commentLinearIssue, commitAll, compactArchiveProse, compactPartsForSummaryMessage, compactSummaryPart, computeNextRunAt, conductorBundledBinDir, conductorDbPath, confirmClaudeUsageOverLimitEnabled, confirmLand, connectBrightsyTeam, connectOptionalService, connectSlackToken, connectedOptionalServices, connectedOrchestratorTurnReminder, 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, disconnectRemoteAccount, 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, formatClaudeSubagentReminder, formatClaudeUsageCompact, formatClaudeUsageFetchedAt, formatClaudeUsageOverLimitConfirm, formatClaudeUsageOverLimitWait, formatClaudeUsageReset, formatClaudeUsageResetClock, formatClaudeUsageTooltip, formatCloudTurnReply, formatConnectedOrchestratorReminder, formatDetachedJobInvoke, formatDevAccessHint, formatFetchError, formatGhLandError, formatGitAuthModeDirective, formatInjectedNoticesForTurn, formatIpcInvokeError, formatIssueToolsDirective, formatIssueToolsReminder, formatLinearDirective, formatLinearReminder, formatLongRunningDirective, formatLongRunningReminder, formatMergePrError, formatMessagesAsTranscript, formatNotifyOrchestratorPrompt, formatOptionalServicesDirective, formatOptionalServicesDirectiveForTurn, formatOptionalServicesReminder, formatOptionalServicesReminderForTurn, 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, getMcpUiHost, getOrchestrator, getPr, getPrChecks, getPrDetails, getPrForHeadBranch, getPrMeta, getPrStack, getRepoSetupInfo, getRunMode, getRunScript, getSchedule, getSlackWorkspace, getWorktreeDirtyStat, gh, ghHeadRef, ghPrCreateAssigneeArgs, ghRepoSelectArgs, git, gitBranchPrefixSetting, githubAgentGitEnv, githubHttpsInsteadOfEntries, githubProjectsOnIssue, githubRelationEditFlag, globalAgentCwd, groupHomeBoardWorktrees, handleRemoteInbound, handleSlackInbound, harnessEnvKey, hasBakedAbleTimeOAuth, hasBakedLinearOAuth, hasBakedSlackOAuth, hasConductorHook, hasConventionSetup, hasCursorWorktreeSetup, hasEnabledSchedules, hasRepoHook, hasWorkspaceHook, hasWorkspaceSettingsToml, headlessHostBlockedReason, 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, isClaudeAiConnectorMcp, 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, isPosthogConnected, isPrNotMergeableError, isPresentPlanToolName, isPrimaryCheckoutThread, isRemoteAccountLoginCancelled, isRemoteStopCommand, isRemovedWorkspace, 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, lanRelayUrls, lastAgentReply, lastAssistantMessageText, lastRequestOccupancy, latestPendingPlanQuestions, linearAuthorizationHeader, linearCycleIsActive, linearGraphql, linearOAuthAuthorizeUrl, linearOAuthCredentials, linearRelationCreateInput, linearTicketIdFromThread, linkSharedDirectories, linkifyChatUrls, listAbleTimeAssignedIssues, listAbleTimeProjects, listAbleTimeTasks, listAgentSetupInfo, listBoardPins, listBranchCommits, listBranches, listBrightsyAccounts, listBrightsyChatTargets, listCodexModels, listConductorWorkspaces, listConnectedBrightsyTeams, listCursorModels, listGitHubIssueCommentsSince, listGitHubIssues, listGitHubProjects, listGlobalThreads, listIssues, listLinearAssignedIssues, listLinearCommentsSince, listLinearIssues, listLinearIssuesDirect, listLinearIssuesFiltered, listLinearProjects, 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, mcpServerIdForPermission, mcpServerPermissionUpdate, mcpStatusThinkingFromClaudeInit, mcpUiContentSecurityPolicy, mentionsPrGoal, mergeAgentGitAuthEnv, mergePr, mergePrStack, mergeSetupOutput, mergeSideboardIntoMcpServersJson, mergeUsage, messagePartParentId, messagesForCompactArchive, messagesSinceLastBrightsyContextSummary, mirrorHostConfig, moveQueuedItemToFront, needsCoordinatorAction, nextManagedAccount, nextPastedTextName, nextThinkingEffort, nonInteractiveGitProcessEnv, normalizeAbleTimeCredential, normalizeAbleTimeHost, normalizeBrightsyEndpoint, normalizeCodeSelection, normalizeLinearRelationType, normalizeManagedAccounts, normalizeParseResult, normalizeRemoteRelayUrl, normalizeReviewLabel, normalizeServiceOrigin, normalizeThinkingEffort, normalizeThread, normalizeTurnInput, normalizeWorkspaceTags, normalizeWorktreePath, notifyOrchestrator, npmGlobalNodeModules, npmGlobalPrefix, openInSystemTerminal, openPrStackLayers, openStackLayer, opencodeAdapter, optionalCliPresence, 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, remoteAccountHttpOrigin, 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, sameWorkspacePath, sameWorktreePath, sanitizeGitBranchPrefix, sanitizeMcpServerName, sanitizeReadAloudVoiceURI, saveAbleTimeConnection, saveAppSettings, saveLinearOAuth, saveRemotePhoneToken, 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, startHeadlessHost, startLinearOAuth, startMcpServer, startOrchestration, startRelayServer, startRemoteAccountLogin, 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, visibleAgentBlock, visibleAssistantText, visibleToolRowDetail, waitForPidExit, warmGithubAgentAuth, whichOnPath, withAddedAccount, withEventParentId, withEventsParentId, withExportedPath, withMaxOldSpaceSize, withRemovedAccount, withSelectedAccount, withThreadLock, withTurnScopedCost, workspaceAgentChatSummaries, workspaceSettingsSourceLabel, workspaceTagTargetRef, workspaceTagsFromGroup, worktreeAgentBlock, worktreeBoardStatus, worktreeCleanupSettings, worktreeDisplayLabel, worktreeDisplayLabelForGroup, worktreeNameFromPath, worktreeRunPortsPath, worktreeSlugForTicket, worktreesRoot, wrapReviewSkillMarkdown, writeInjectedMcpConfig, writePlanFile, writeThread, writeViewerContext, writeWorktreeFile };
|
|
8682
|
+
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 AgentBlock, type AgentBlockSource, type AgentDoneCustomSoundPayload, type AgentDoneSound, type AgentEvent, type AgentGitAction, type AgentKind, type AgentModelCatalog, type AgentModelInfo, type AgentPermissionPrompt, type AgentRpcConnect, type AgentRuntimeMetadata, type AgentSetupActionResult, type AgentSetupInfo, type AgentSetupKind, type AgentStatus, type AgentTurnInput, type AnthropicCacheControl, type AppSettings, type ApplyIntoMainResult, type AskBlockSnapshot, 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_POSTHOG_CONNECTOR_ALLOWED_TOOLS, 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 GitHubProject, type GitHubProjectRef, 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 McpUiView, type MessagePart, type NextManagedAccount, type NotifyOrchestratorReason, type NotifyOrchestratorResult, OPTIONAL_SERVICES, OPTIONAL_SERVICE_IDS, ORCHESTRATOR_AGENT_KINDS, type OpenPrStackLayersInput, type OpenStackLayerInput, type OpenStackLayerResult, type OptionalCliPresence, 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 RelayAccountProvider, type RelayServerHandle, type RelayServerOptions, type RemoteAccountSession, 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 SteerRequest, 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 WorkspaceTagMode, 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, answerToolPermission, appDataDir, appSettingsPath, appendCompactedMessages, appendIndexedGitConfig, appendMessage, appendQueuedItem, applyAgentEvent, applyAgentRunnerHeapEnv, applyAppEnvironment, applyCompaction, applyForwardOccupancy, applyGithubGitAuthEnv, applyManagedAccountEnv, applyPromptCacheTtlEnv, applySystemCaEnv, applyThreadIntoMain, applyTurnUsage, applyWorkspaceTags, archiveRemovedWorkspaceChats, archivesWithRemovedWorkspace, 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, claudeSubagentTurnReminder, claudeUsageOverLimitWindows, claudeUserSettingsPath, cleanupArchivedHistory, cleanupOrphanWorktrees, clearAgentDoneCustomSoundFile, clearBoardPins, clearHomeBoardCache, clearOptionalCliPresenceCache, clipAgentEventForPaint, clipThinkingForStore, cloneRepoIntoSideboard, closeMcpUiHost, codeRefRangeLabel, codexAdapter, codexSandboxWritableRootsArgs, codexUnattendedGitConfigArgs, coerceOrchestratorAgent, collectTakenTeamSlugs, commandLooksLikeElectron, commentAbleTimeTask, commentGitHubIssue, commentLinearIssue, commitAll, compactArchiveProse, compactPartsForSummaryMessage, compactSummaryPart, computeNextRunAt, conductorBundledBinDir, conductorDbPath, confirmClaudeUsageOverLimitEnabled, confirmLand, connectBrightsyTeam, connectOptionalService, connectSlackToken, connectedOptionalServices, connectedOrchestratorTurnReminder, 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, disconnectRemoteAccount, 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, formatClaudeSubagentReminder, formatClaudeUsageCompact, formatClaudeUsageFetchedAt, formatClaudeUsageOverLimitConfirm, formatClaudeUsageOverLimitWait, formatClaudeUsageReset, formatClaudeUsageResetClock, formatClaudeUsageTooltip, formatCloudTurnReply, formatConnectedOrchestratorReminder, formatDetachedJobInvoke, formatDevAccessHint, formatFetchError, formatGhLandError, formatGitAuthModeDirective, formatInjectedNoticesForTurn, formatIpcInvokeError, formatIssueToolsDirective, formatIssueToolsReminder, formatLinearDirective, formatLinearReminder, formatLongRunningDirective, formatLongRunningReminder, formatMergePrError, formatMessagesAsTranscript, formatNotifyOrchestratorPrompt, formatOptionalServicesDirective, formatOptionalServicesDirectiveForTurn, formatOptionalServicesReminder, formatOptionalServicesReminderForTurn, 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, getMcpUiHost, getOrchestrator, getPr, getPrChecks, getPrDetails, getPrForHeadBranch, getPrMeta, getPrStack, getRepoSetupInfo, getRunMode, getRunScript, getSchedule, getSlackWorkspace, getWorktreeDirtyStat, gh, ghHeadRef, ghPrCreateAssigneeArgs, ghRepoSelectArgs, git, gitBranchPrefixSetting, githubAgentGitEnv, githubHttpsInsteadOfEntries, githubProjectsOnIssue, githubRelationEditFlag, globalAgentCwd, groupHomeBoardWorktrees, handleRemoteInbound, handleSlackInbound, harnessEnvKey, hasBakedAbleTimeOAuth, hasBakedLinearOAuth, hasBakedSlackOAuth, hasConductorHook, hasConventionSetup, hasCursorWorktreeSetup, hasEnabledSchedules, hasRepoHook, hasWorkspaceHook, hasWorkspaceSettingsToml, headlessHostBlockedReason, 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, isClaudeAiConnectorMcp, 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, isPosthogConnected, isPrNotMergeableError, isPresentPlanToolName, isPrimaryCheckoutThread, isRemoteAccountLoginCancelled, isRemoteStopCommand, isRemovedWorkspace, 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, lanRelayUrls, lastAgentReply, lastAssistantMessageText, lastRequestOccupancy, latestPendingPlanQuestions, linearAuthorizationHeader, linearCycleIsActive, linearGraphql, linearOAuthAuthorizeUrl, linearOAuthCredentials, linearRelationCreateInput, linearTicketIdFromThread, linkSharedDirectories, linkifyChatUrls, listAbleTimeAssignedIssues, listAbleTimeProjects, listAbleTimeTasks, listAgentSetupInfo, listBoardPins, listBranchCommits, listBranches, listBrightsyAccounts, listBrightsyChatTargets, listCodexModels, listConductorWorkspaces, listConnectedBrightsyTeams, listCursorModels, listGitHubIssueCommentsSince, listGitHubIssues, listGitHubProjects, listGlobalThreads, listIssues, listLinearAssignedIssues, listLinearCommentsSince, listLinearIssues, listLinearIssuesDirect, listLinearIssuesFiltered, listLinearProjects, 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, mcpServerIdForPermission, mcpServerPermissionUpdate, mcpStatusThinkingFromClaudeInit, mcpUiContentSecurityPolicy, mentionsPrGoal, mergeAgentGitAuthEnv, mergePr, mergePrStack, mergeSetupOutput, mergeSideboardIntoMcpServersJson, mergeUsage, messagePartParentId, messagesForCompactArchive, messagesSinceLastBrightsyContextSummary, mirrorHostConfig, moveQueuedItemToFront, needsCoordinatorAction, nextManagedAccount, nextPastedTextName, nextThinkingEffort, nonInteractiveGitProcessEnv, normalizeAbleTimeCredential, normalizeAbleTimeHost, normalizeBrightsyEndpoint, normalizeCodeSelection, normalizeLinearRelationType, normalizeManagedAccounts, normalizeParseResult, normalizeRemoteRelayUrl, normalizeReviewLabel, normalizeServiceOrigin, normalizeThinkingEffort, normalizeThread, normalizeTurnInput, normalizeWorkspaceTags, normalizeWorktreePath, notifyOrchestrator, npmGlobalNodeModules, npmGlobalPrefix, openInSystemTerminal, openPrStackLayers, openStackLayer, opencodeAdapter, optionalCliPresence, 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, remoteAccountHttpOrigin, 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, sameWorkspacePath, sameWorktreePath, sanitizeGitBranchPrefix, sanitizeMcpServerName, sanitizeReadAloudVoiceURI, saveAbleTimeConnection, saveAppSettings, saveLinearOAuth, saveRemotePhoneToken, 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, sidebarParentSelectId, sidebarQuestionThreadId, sidebarRowAgentBlock, 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, startHeadlessHost, startLinearOAuth, startMcpServer, startOrchestration, startRelayServer, startRemoteAccountLogin, 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, visibleAgentBlock, visibleAssistantText, visibleToolRowDetail, waitForPidExit, warmGithubAgentAuth, whichOnPath, withAddedAccount, withEventParentId, withEventsParentId, withExportedPath, withMaxOldSpaceSize, withRemovedAccount, withSelectedAccount, withThreadLock, withTurnScopedCost, workspaceAgentChatSummaries, workspaceSettingsSourceLabel, workspaceTagTargetRef, workspaceTagsFromGroup, worktreeAgentBlock, worktreeBoardStatus, worktreeCleanupSettings, worktreeDisplayLabel, worktreeDisplayLabelForGroup, worktreeNameFromPath, worktreeRunPortsPath, worktreeSlugForTicket, worktreesRoot, wrapReviewSkillMarkdown, writeInjectedMcpConfig, writePlanFile, writeThread, writeViewerContext, writeWorktreeFile };
|
package/dist/index.d.ts
CHANGED
|
@@ -31,6 +31,20 @@ interface AgentBlock {
|
|
|
31
31
|
at: string;
|
|
32
32
|
/** ask_user question-set signature, so a skip can drop this highlight. */
|
|
33
33
|
questionSignature?: string;
|
|
34
|
+
/**
|
|
35
|
+
* Full ask_user payload. The composer reads this when the transcript
|
|
36
|
+
* tool call never stored its input, so the sidebar highlight and the
|
|
37
|
+
* chat picker stay the same question.
|
|
38
|
+
*/
|
|
39
|
+
questions?: Array<{
|
|
40
|
+
question: string;
|
|
41
|
+
header?: string;
|
|
42
|
+
multiSelect?: boolean;
|
|
43
|
+
options: Array<{
|
|
44
|
+
label: string;
|
|
45
|
+
description?: string;
|
|
46
|
+
}>;
|
|
47
|
+
}>;
|
|
34
48
|
permission?: AgentPermissionPrompt;
|
|
35
49
|
}
|
|
36
50
|
|
|
@@ -6378,10 +6392,19 @@ type ToolPartLike = {
|
|
|
6378
6392
|
id?: string;
|
|
6379
6393
|
name?: string;
|
|
6380
6394
|
input?: Record<string, unknown>;
|
|
6395
|
+
/** Tool result text. ask_user echoes the questions here when input was empty. */
|
|
6396
|
+
result?: string;
|
|
6381
6397
|
status?: string;
|
|
6382
6398
|
};
|
|
6383
6399
|
/** Newest ask-user tool part with parseable questions (live or persisted). */
|
|
6384
6400
|
declare function extractPendingPlanQuestions(parts: ToolPartLike[] | undefined | null): PendingPlanQuestions | null;
|
|
6401
|
+
/** Sidebar ask_user highlight, including questions stamped at call time. */
|
|
6402
|
+
interface AskBlockSnapshot {
|
|
6403
|
+
source?: string;
|
|
6404
|
+
at?: string;
|
|
6405
|
+
questionSignature?: string;
|
|
6406
|
+
questions?: PlanQuestion[];
|
|
6407
|
+
}
|
|
6385
6408
|
/**
|
|
6386
6409
|
* Questions still waiting on the user. After they reply (composer picker or
|
|
6387
6410
|
* a normal chat message — persisted or in-flight), this is null so the panel
|
|
@@ -6391,10 +6414,18 @@ declare function latestPendingPlanQuestions(input: {
|
|
|
6391
6414
|
messages: Array<{
|
|
6392
6415
|
role: string;
|
|
6393
6416
|
parts?: ToolPartLike[];
|
|
6417
|
+
ts?: string;
|
|
6418
|
+
origin?: string;
|
|
6394
6419
|
}>;
|
|
6395
6420
|
liveParts?: ToolPartLike[] | null;
|
|
6396
6421
|
/** Optimistic user send not yet in `messages`. */
|
|
6397
6422
|
userReplied?: boolean;
|
|
6423
|
+
/**
|
|
6424
|
+
* Sidebar highlight. The chat picker uses it when the transcript tool
|
|
6425
|
+
* call is missing or stored its result without the original input.
|
|
6426
|
+
*/
|
|
6427
|
+
agentBlock?: AskBlockSnapshot | null;
|
|
6428
|
+
dismissedQuestionSignature?: string | null;
|
|
6398
6429
|
}): PendingPlanQuestions | null;
|
|
6399
6430
|
interface PlanQuestionAnswer {
|
|
6400
6431
|
questionIndex: number;
|
|
@@ -6698,6 +6729,23 @@ declare function visibleAgentBlock(thread: Pick<Thread, 'status' | 'agentBlock'
|
|
|
6698
6729
|
* Herdr uses so the row that needs a decision is the one you see.
|
|
6699
6730
|
*/
|
|
6700
6731
|
declare function worktreeAgentBlock(group: Array<Pick<Thread, 'status' | 'agentBlock' | 'dismissedQuestionSignature'>>): AgentBlock | null;
|
|
6732
|
+
/**
|
|
6733
|
+
* Reason on the worktree parent row. While one of its chats is open, the
|
|
6734
|
+
* row matches that chat — a sibling's question must not sit in the sidebar
|
|
6735
|
+
* after you have switched agents. Closed rows still roll up the group.
|
|
6736
|
+
*/
|
|
6737
|
+
declare function sidebarRowAgentBlock(group: Array<Pick<Thread, 'id' | 'status' | 'agentBlock' | 'dismissedQuestionSignature'>>, opts: {
|
|
6738
|
+
active: boolean;
|
|
6739
|
+
selectedId: string | null;
|
|
6740
|
+
}): AgentBlock | null;
|
|
6741
|
+
/**
|
|
6742
|
+
* Closed worktree rows open the chat that asked. An already-open row keeps
|
|
6743
|
+
* the selected chat — the parent is no longer showing a sibling's question.
|
|
6744
|
+
*/
|
|
6745
|
+
declare function sidebarParentSelectId(group: Array<Pick<Thread, 'id' | 'status' | 'agentBlock' | 'dismissedQuestionSignature'>>, primaryId: string, opts: {
|
|
6746
|
+
active: boolean;
|
|
6747
|
+
}): string;
|
|
6748
|
+
declare function sidebarQuestionThreadId(group: Array<Pick<Thread, 'id' | 'status' | 'agentBlock' | 'dismissedQuestionSignature'>>, primaryId: string): string;
|
|
6701
6749
|
|
|
6702
6750
|
/**
|
|
6703
6751
|
* Home Kanban work item — every worktree checkout, however it was created
|
|
@@ -8631,4 +8679,4 @@ declare function pollSlackOutboundWatches(opts?: {
|
|
|
8631
8679
|
now?: number;
|
|
8632
8680
|
}): Promise<void>;
|
|
8633
8681
|
|
|
8634
|
-
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 AgentBlock, type AgentBlockSource, type AgentDoneCustomSoundPayload, type AgentDoneSound, type AgentEvent, type AgentGitAction, type AgentKind, type AgentModelCatalog, type AgentModelInfo, type AgentPermissionPrompt, 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_POSTHOG_CONNECTOR_ALLOWED_TOOLS, 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 GitHubProject, type GitHubProjectRef, 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 McpUiView, type MessagePart, type NextManagedAccount, type NotifyOrchestratorReason, type NotifyOrchestratorResult, OPTIONAL_SERVICES, OPTIONAL_SERVICE_IDS, ORCHESTRATOR_AGENT_KINDS, type OpenPrStackLayersInput, type OpenStackLayerInput, type OpenStackLayerResult, type OptionalCliPresence, 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 RelayAccountProvider, type RelayServerHandle, type RelayServerOptions, type RemoteAccountSession, 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 SteerRequest, 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 WorkspaceTagMode, 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, answerToolPermission, appDataDir, appSettingsPath, appendCompactedMessages, appendIndexedGitConfig, appendMessage, appendQueuedItem, applyAgentEvent, applyAgentRunnerHeapEnv, applyAppEnvironment, applyCompaction, applyForwardOccupancy, applyGithubGitAuthEnv, applyManagedAccountEnv, applyPromptCacheTtlEnv, applySystemCaEnv, applyThreadIntoMain, applyTurnUsage, applyWorkspaceTags, archiveRemovedWorkspaceChats, archivesWithRemovedWorkspace, 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, claudeSubagentTurnReminder, claudeUsageOverLimitWindows, claudeUserSettingsPath, cleanupArchivedHistory, cleanupOrphanWorktrees, clearAgentDoneCustomSoundFile, clearBoardPins, clearHomeBoardCache, clearOptionalCliPresenceCache, clipAgentEventForPaint, clipThinkingForStore, cloneRepoIntoSideboard, closeMcpUiHost, codeRefRangeLabel, codexAdapter, codexSandboxWritableRootsArgs, codexUnattendedGitConfigArgs, coerceOrchestratorAgent, collectTakenTeamSlugs, commandLooksLikeElectron, commentAbleTimeTask, commentGitHubIssue, commentLinearIssue, commitAll, compactArchiveProse, compactPartsForSummaryMessage, compactSummaryPart, computeNextRunAt, conductorBundledBinDir, conductorDbPath, confirmClaudeUsageOverLimitEnabled, confirmLand, connectBrightsyTeam, connectOptionalService, connectSlackToken, connectedOptionalServices, connectedOrchestratorTurnReminder, 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, disconnectRemoteAccount, 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, formatClaudeSubagentReminder, formatClaudeUsageCompact, formatClaudeUsageFetchedAt, formatClaudeUsageOverLimitConfirm, formatClaudeUsageOverLimitWait, formatClaudeUsageReset, formatClaudeUsageResetClock, formatClaudeUsageTooltip, formatCloudTurnReply, formatConnectedOrchestratorReminder, formatDetachedJobInvoke, formatDevAccessHint, formatFetchError, formatGhLandError, formatGitAuthModeDirective, formatInjectedNoticesForTurn, formatIpcInvokeError, formatIssueToolsDirective, formatIssueToolsReminder, formatLinearDirective, formatLinearReminder, formatLongRunningDirective, formatLongRunningReminder, formatMergePrError, formatMessagesAsTranscript, formatNotifyOrchestratorPrompt, formatOptionalServicesDirective, formatOptionalServicesDirectiveForTurn, formatOptionalServicesReminder, formatOptionalServicesReminderForTurn, 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, getMcpUiHost, getOrchestrator, getPr, getPrChecks, getPrDetails, getPrForHeadBranch, getPrMeta, getPrStack, getRepoSetupInfo, getRunMode, getRunScript, getSchedule, getSlackWorkspace, getWorktreeDirtyStat, gh, ghHeadRef, ghPrCreateAssigneeArgs, ghRepoSelectArgs, git, gitBranchPrefixSetting, githubAgentGitEnv, githubHttpsInsteadOfEntries, githubProjectsOnIssue, githubRelationEditFlag, globalAgentCwd, groupHomeBoardWorktrees, handleRemoteInbound, handleSlackInbound, harnessEnvKey, hasBakedAbleTimeOAuth, hasBakedLinearOAuth, hasBakedSlackOAuth, hasConductorHook, hasConventionSetup, hasCursorWorktreeSetup, hasEnabledSchedules, hasRepoHook, hasWorkspaceHook, hasWorkspaceSettingsToml, headlessHostBlockedReason, 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, isClaudeAiConnectorMcp, 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, isPosthogConnected, isPrNotMergeableError, isPresentPlanToolName, isPrimaryCheckoutThread, isRemoteAccountLoginCancelled, isRemoteStopCommand, isRemovedWorkspace, 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, lanRelayUrls, lastAgentReply, lastAssistantMessageText, lastRequestOccupancy, latestPendingPlanQuestions, linearAuthorizationHeader, linearCycleIsActive, linearGraphql, linearOAuthAuthorizeUrl, linearOAuthCredentials, linearRelationCreateInput, linearTicketIdFromThread, linkSharedDirectories, linkifyChatUrls, listAbleTimeAssignedIssues, listAbleTimeProjects, listAbleTimeTasks, listAgentSetupInfo, listBoardPins, listBranchCommits, listBranches, listBrightsyAccounts, listBrightsyChatTargets, listCodexModels, listConductorWorkspaces, listConnectedBrightsyTeams, listCursorModels, listGitHubIssueCommentsSince, listGitHubIssues, listGitHubProjects, listGlobalThreads, listIssues, listLinearAssignedIssues, listLinearCommentsSince, listLinearIssues, listLinearIssuesDirect, listLinearIssuesFiltered, listLinearProjects, 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, mcpServerIdForPermission, mcpServerPermissionUpdate, mcpStatusThinkingFromClaudeInit, mcpUiContentSecurityPolicy, mentionsPrGoal, mergeAgentGitAuthEnv, mergePr, mergePrStack, mergeSetupOutput, mergeSideboardIntoMcpServersJson, mergeUsage, messagePartParentId, messagesForCompactArchive, messagesSinceLastBrightsyContextSummary, mirrorHostConfig, moveQueuedItemToFront, needsCoordinatorAction, nextManagedAccount, nextPastedTextName, nextThinkingEffort, nonInteractiveGitProcessEnv, normalizeAbleTimeCredential, normalizeAbleTimeHost, normalizeBrightsyEndpoint, normalizeCodeSelection, normalizeLinearRelationType, normalizeManagedAccounts, normalizeParseResult, normalizeRemoteRelayUrl, normalizeReviewLabel, normalizeServiceOrigin, normalizeThinkingEffort, normalizeThread, normalizeTurnInput, normalizeWorkspaceTags, normalizeWorktreePath, notifyOrchestrator, npmGlobalNodeModules, npmGlobalPrefix, openInSystemTerminal, openPrStackLayers, openStackLayer, opencodeAdapter, optionalCliPresence, 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, remoteAccountHttpOrigin, 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, sameWorkspacePath, sameWorktreePath, sanitizeGitBranchPrefix, sanitizeMcpServerName, sanitizeReadAloudVoiceURI, saveAbleTimeConnection, saveAppSettings, saveLinearOAuth, saveRemotePhoneToken, 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, startHeadlessHost, startLinearOAuth, startMcpServer, startOrchestration, startRelayServer, startRemoteAccountLogin, 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, visibleAgentBlock, visibleAssistantText, visibleToolRowDetail, waitForPidExit, warmGithubAgentAuth, whichOnPath, withAddedAccount, withEventParentId, withEventsParentId, withExportedPath, withMaxOldSpaceSize, withRemovedAccount, withSelectedAccount, withThreadLock, withTurnScopedCost, workspaceAgentChatSummaries, workspaceSettingsSourceLabel, workspaceTagTargetRef, workspaceTagsFromGroup, worktreeAgentBlock, worktreeBoardStatus, worktreeCleanupSettings, worktreeDisplayLabel, worktreeDisplayLabelForGroup, worktreeNameFromPath, worktreeRunPortsPath, worktreeSlugForTicket, worktreesRoot, wrapReviewSkillMarkdown, writeInjectedMcpConfig, writePlanFile, writeThread, writeViewerContext, writeWorktreeFile };
|
|
8682
|
+
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 AgentBlock, type AgentBlockSource, type AgentDoneCustomSoundPayload, type AgentDoneSound, type AgentEvent, type AgentGitAction, type AgentKind, type AgentModelCatalog, type AgentModelInfo, type AgentPermissionPrompt, type AgentRpcConnect, type AgentRuntimeMetadata, type AgentSetupActionResult, type AgentSetupInfo, type AgentSetupKind, type AgentStatus, type AgentTurnInput, type AnthropicCacheControl, type AppSettings, type ApplyIntoMainResult, type AskBlockSnapshot, 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_POSTHOG_CONNECTOR_ALLOWED_TOOLS, 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 GitHubProject, type GitHubProjectRef, 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 McpUiView, type MessagePart, type NextManagedAccount, type NotifyOrchestratorReason, type NotifyOrchestratorResult, OPTIONAL_SERVICES, OPTIONAL_SERVICE_IDS, ORCHESTRATOR_AGENT_KINDS, type OpenPrStackLayersInput, type OpenStackLayerInput, type OpenStackLayerResult, type OptionalCliPresence, 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 RelayAccountProvider, type RelayServerHandle, type RelayServerOptions, type RemoteAccountSession, 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 SteerRequest, 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 WorkspaceTagMode, 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, answerToolPermission, appDataDir, appSettingsPath, appendCompactedMessages, appendIndexedGitConfig, appendMessage, appendQueuedItem, applyAgentEvent, applyAgentRunnerHeapEnv, applyAppEnvironment, applyCompaction, applyForwardOccupancy, applyGithubGitAuthEnv, applyManagedAccountEnv, applyPromptCacheTtlEnv, applySystemCaEnv, applyThreadIntoMain, applyTurnUsage, applyWorkspaceTags, archiveRemovedWorkspaceChats, archivesWithRemovedWorkspace, 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, claudeSubagentTurnReminder, claudeUsageOverLimitWindows, claudeUserSettingsPath, cleanupArchivedHistory, cleanupOrphanWorktrees, clearAgentDoneCustomSoundFile, clearBoardPins, clearHomeBoardCache, clearOptionalCliPresenceCache, clipAgentEventForPaint, clipThinkingForStore, cloneRepoIntoSideboard, closeMcpUiHost, codeRefRangeLabel, codexAdapter, codexSandboxWritableRootsArgs, codexUnattendedGitConfigArgs, coerceOrchestratorAgent, collectTakenTeamSlugs, commandLooksLikeElectron, commentAbleTimeTask, commentGitHubIssue, commentLinearIssue, commitAll, compactArchiveProse, compactPartsForSummaryMessage, compactSummaryPart, computeNextRunAt, conductorBundledBinDir, conductorDbPath, confirmClaudeUsageOverLimitEnabled, confirmLand, connectBrightsyTeam, connectOptionalService, connectSlackToken, connectedOptionalServices, connectedOrchestratorTurnReminder, 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, disconnectRemoteAccount, 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, formatClaudeSubagentReminder, formatClaudeUsageCompact, formatClaudeUsageFetchedAt, formatClaudeUsageOverLimitConfirm, formatClaudeUsageOverLimitWait, formatClaudeUsageReset, formatClaudeUsageResetClock, formatClaudeUsageTooltip, formatCloudTurnReply, formatConnectedOrchestratorReminder, formatDetachedJobInvoke, formatDevAccessHint, formatFetchError, formatGhLandError, formatGitAuthModeDirective, formatInjectedNoticesForTurn, formatIpcInvokeError, formatIssueToolsDirective, formatIssueToolsReminder, formatLinearDirective, formatLinearReminder, formatLongRunningDirective, formatLongRunningReminder, formatMergePrError, formatMessagesAsTranscript, formatNotifyOrchestratorPrompt, formatOptionalServicesDirective, formatOptionalServicesDirectiveForTurn, formatOptionalServicesReminder, formatOptionalServicesReminderForTurn, 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, getMcpUiHost, getOrchestrator, getPr, getPrChecks, getPrDetails, getPrForHeadBranch, getPrMeta, getPrStack, getRepoSetupInfo, getRunMode, getRunScript, getSchedule, getSlackWorkspace, getWorktreeDirtyStat, gh, ghHeadRef, ghPrCreateAssigneeArgs, ghRepoSelectArgs, git, gitBranchPrefixSetting, githubAgentGitEnv, githubHttpsInsteadOfEntries, githubProjectsOnIssue, githubRelationEditFlag, globalAgentCwd, groupHomeBoardWorktrees, handleRemoteInbound, handleSlackInbound, harnessEnvKey, hasBakedAbleTimeOAuth, hasBakedLinearOAuth, hasBakedSlackOAuth, hasConductorHook, hasConventionSetup, hasCursorWorktreeSetup, hasEnabledSchedules, hasRepoHook, hasWorkspaceHook, hasWorkspaceSettingsToml, headlessHostBlockedReason, 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, isClaudeAiConnectorMcp, 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, isPosthogConnected, isPrNotMergeableError, isPresentPlanToolName, isPrimaryCheckoutThread, isRemoteAccountLoginCancelled, isRemoteStopCommand, isRemovedWorkspace, 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, lanRelayUrls, lastAgentReply, lastAssistantMessageText, lastRequestOccupancy, latestPendingPlanQuestions, linearAuthorizationHeader, linearCycleIsActive, linearGraphql, linearOAuthAuthorizeUrl, linearOAuthCredentials, linearRelationCreateInput, linearTicketIdFromThread, linkSharedDirectories, linkifyChatUrls, listAbleTimeAssignedIssues, listAbleTimeProjects, listAbleTimeTasks, listAgentSetupInfo, listBoardPins, listBranchCommits, listBranches, listBrightsyAccounts, listBrightsyChatTargets, listCodexModels, listConductorWorkspaces, listConnectedBrightsyTeams, listCursorModels, listGitHubIssueCommentsSince, listGitHubIssues, listGitHubProjects, listGlobalThreads, listIssues, listLinearAssignedIssues, listLinearCommentsSince, listLinearIssues, listLinearIssuesDirect, listLinearIssuesFiltered, listLinearProjects, 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, mcpServerIdForPermission, mcpServerPermissionUpdate, mcpStatusThinkingFromClaudeInit, mcpUiContentSecurityPolicy, mentionsPrGoal, mergeAgentGitAuthEnv, mergePr, mergePrStack, mergeSetupOutput, mergeSideboardIntoMcpServersJson, mergeUsage, messagePartParentId, messagesForCompactArchive, messagesSinceLastBrightsyContextSummary, mirrorHostConfig, moveQueuedItemToFront, needsCoordinatorAction, nextManagedAccount, nextPastedTextName, nextThinkingEffort, nonInteractiveGitProcessEnv, normalizeAbleTimeCredential, normalizeAbleTimeHost, normalizeBrightsyEndpoint, normalizeCodeSelection, normalizeLinearRelationType, normalizeManagedAccounts, normalizeParseResult, normalizeRemoteRelayUrl, normalizeReviewLabel, normalizeServiceOrigin, normalizeThinkingEffort, normalizeThread, normalizeTurnInput, normalizeWorkspaceTags, normalizeWorktreePath, notifyOrchestrator, npmGlobalNodeModules, npmGlobalPrefix, openInSystemTerminal, openPrStackLayers, openStackLayer, opencodeAdapter, optionalCliPresence, 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, remoteAccountHttpOrigin, 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, sameWorkspacePath, sameWorktreePath, sanitizeGitBranchPrefix, sanitizeMcpServerName, sanitizeReadAloudVoiceURI, saveAbleTimeConnection, saveAppSettings, saveLinearOAuth, saveRemotePhoneToken, 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, sidebarParentSelectId, sidebarQuestionThreadId, sidebarRowAgentBlock, 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, startHeadlessHost, startLinearOAuth, startMcpServer, startOrchestration, startRelayServer, startRemoteAccountLogin, 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, visibleAgentBlock, visibleAssistantText, visibleToolRowDetail, waitForPidExit, warmGithubAgentAuth, whichOnPath, withAddedAccount, withEventParentId, withEventsParentId, withExportedPath, withMaxOldSpaceSize, withRemovedAccount, withSelectedAccount, withThreadLock, withTurnScopedCost, workspaceAgentChatSummaries, workspaceSettingsSourceLabel, workspaceTagTargetRef, workspaceTagsFromGroup, worktreeAgentBlock, worktreeBoardStatus, worktreeCleanupSettings, worktreeDisplayLabel, worktreeDisplayLabelForGroup, worktreeNameFromPath, worktreeRunPortsPath, worktreeSlugForTicket, worktreesRoot, wrapReviewSkillMarkdown, writeInjectedMcpConfig, writePlanFile, writeThread, writeViewerContext, writeWorktreeFile };
|
package/dist/index.js
CHANGED
|
@@ -177,6 +177,9 @@ import {
|
|
|
177
177
|
shouldRunHistoryCleanup,
|
|
178
178
|
shouldRunWorktreeCleanup,
|
|
179
179
|
shouldStampSetupLastError,
|
|
180
|
+
sidebarParentSelectId,
|
|
181
|
+
sidebarQuestionThreadId,
|
|
182
|
+
sidebarRowAgentBlock,
|
|
180
183
|
sliceRunLogOutput,
|
|
181
184
|
spawnAgentTurn,
|
|
182
185
|
stackAgentDefaultsFrom,
|
|
@@ -198,7 +201,7 @@ import {
|
|
|
198
201
|
worktreeCleanupSettings,
|
|
199
202
|
writeAgentBlock,
|
|
200
203
|
writeWorktreeFile
|
|
201
|
-
} from "./chunk-
|
|
204
|
+
} from "./chunk-GXFOZ5XL.js";
|
|
202
205
|
import {
|
|
203
206
|
LEGACY_PLAN_FILE_REL,
|
|
204
207
|
PLAN_FILE_NAME,
|
|
@@ -421,7 +424,7 @@ import {
|
|
|
421
424
|
workspaceAgentChatSummaries,
|
|
422
425
|
worktreeRunPortsPath,
|
|
423
426
|
wrapReviewSkillMarkdown
|
|
424
|
-
} from "./chunk-
|
|
427
|
+
} from "./chunk-CTFBZZGZ.js";
|
|
425
428
|
import {
|
|
426
429
|
STDERR_EVENT_MAX_CHARS,
|
|
427
430
|
STDOUT_EVENT_MAX_CHARS,
|
|
@@ -3199,10 +3202,12 @@ function emitChatTurn(opts, chatId, threadId) {
|
|
|
3199
3202
|
return;
|
|
3200
3203
|
}
|
|
3201
3204
|
const result = getOrchestrator().getTurnResult(thread.id);
|
|
3202
|
-
const pending =
|
|
3203
|
-
|
|
3204
|
-
|
|
3205
|
-
|
|
3205
|
+
const pending = latestPendingPlanQuestions({
|
|
3206
|
+
messages: thread.messages,
|
|
3207
|
+
agentBlock: thread.agentBlock,
|
|
3208
|
+
dismissedQuestionSignature: thread.dismissedQuestionSignature
|
|
3209
|
+
});
|
|
3210
|
+
if (pending && result.taskState !== "failed" && result.taskState !== "canceled" && (result.taskState === "input-required" || thread.agentBlock?.source === "ask_user")) {
|
|
3206
3211
|
emitControl(opts, {
|
|
3207
3212
|
op: "ask",
|
|
3208
3213
|
chatId,
|
|
@@ -3558,7 +3563,11 @@ function dispatchPhonePermission(text5, emit) {
|
|
|
3558
3563
|
function republishPendingAsk(opts, chatId) {
|
|
3559
3564
|
const thread = readPhoneThread(chatId);
|
|
3560
3565
|
if (!thread) return;
|
|
3561
|
-
const pending = latestPendingPlanQuestions({
|
|
3566
|
+
const pending = latestPendingPlanQuestions({
|
|
3567
|
+
messages: thread.messages,
|
|
3568
|
+
agentBlock: thread.agentBlock,
|
|
3569
|
+
dismissedQuestionSignature: thread.dismissedQuestionSignature
|
|
3570
|
+
});
|
|
3562
3571
|
if (!pending) return;
|
|
3563
3572
|
emitControl(opts, {
|
|
3564
3573
|
op: "ask",
|
|
@@ -5779,10 +5788,12 @@ function runCoordinatorPrompt(opts, body, generation) {
|
|
|
5779
5788
|
thread = readThread(thread.id) ?? thread;
|
|
5780
5789
|
if (thread.status === "stopped") return;
|
|
5781
5790
|
const result = orch.getTurnResult(thread.id);
|
|
5782
|
-
const pending =
|
|
5783
|
-
|
|
5784
|
-
|
|
5785
|
-
|
|
5791
|
+
const pending = latestPendingPlanQuestions({
|
|
5792
|
+
messages: thread.messages,
|
|
5793
|
+
agentBlock: thread.agentBlock,
|
|
5794
|
+
dismissedQuestionSignature: thread.dismissedQuestionSignature
|
|
5795
|
+
});
|
|
5796
|
+
if (pending && result.taskState !== "failed" && result.taskState !== "canceled" && (result.taskState === "input-required" || thread.agentBlock?.source === "ask_user")) {
|
|
5786
5797
|
opts.onOutbound({
|
|
5787
5798
|
type: "ask_user",
|
|
5788
5799
|
text: result.text.trim(),
|
|
@@ -8873,7 +8884,7 @@ async function startHeadlessHost(opts) {
|
|
|
8873
8884
|
};
|
|
8874
8885
|
const refreshRunning = async () => {
|
|
8875
8886
|
try {
|
|
8876
|
-
const { getOrchestrator: getOrchestrator2 } = await import("./orchestrator-
|
|
8887
|
+
const { getOrchestrator: getOrchestrator2 } = await import("./orchestrator-SJU5LYAO.js");
|
|
8877
8888
|
agentsRunning = getOrchestrator2().getRuntime().running;
|
|
8878
8889
|
} catch {
|
|
8879
8890
|
agentsRunning = 0;
|
|
@@ -10805,7 +10816,7 @@ async function handleJobStop(params, _ctx) {
|
|
|
10805
10816
|
return stopDetachedJob(jobCwd(rec), id, reason ? { reason } : void 0);
|
|
10806
10817
|
}
|
|
10807
10818
|
async function defaultTurnWait(ref, timeoutMs) {
|
|
10808
|
-
const { getOrchestrator: getOrchestrator2 } = await import("./orchestrator-
|
|
10819
|
+
const { getOrchestrator: getOrchestrator2 } = await import("./orchestrator-SJU5LYAO.js");
|
|
10809
10820
|
const orch = getOrchestrator2();
|
|
10810
10821
|
const thread = await orch.waitForTurn(ref, timeoutMs, {
|
|
10811
10822
|
resolveIfStillRunning: true
|
|
@@ -14178,7 +14189,7 @@ async function continueSourceThread(threadId, prompt) {
|
|
|
14178
14189
|
await continueOnReply(threadId, prompt);
|
|
14179
14190
|
return;
|
|
14180
14191
|
}
|
|
14181
|
-
const { getOrchestrator: getOrchestrator2 } = await import("./orchestrator-
|
|
14192
|
+
const { getOrchestrator: getOrchestrator2 } = await import("./orchestrator-SJU5LYAO.js");
|
|
14182
14193
|
await getOrchestrator2().send(threadId, prompt);
|
|
14183
14194
|
} catch {
|
|
14184
14195
|
}
|
|
@@ -15388,6 +15399,9 @@ export {
|
|
|
15388
15399
|
shouldRunWorktreeCleanup,
|
|
15389
15400
|
shouldStampSetupLastError,
|
|
15390
15401
|
showCostEnabled,
|
|
15402
|
+
sidebarParentSelectId,
|
|
15403
|
+
sidebarQuestionThreadId,
|
|
15404
|
+
sidebarRowAgentBlock,
|
|
15391
15405
|
sideboardHomeDir,
|
|
15392
15406
|
sideboardMcpProfile,
|
|
15393
15407
|
sideboardReposDir,
|
package/dist/mcp/run-stdio.cjs
CHANGED
|
@@ -2122,12 +2122,23 @@ function isAskUserToolName(name) {
|
|
|
2122
2122
|
const base = name.replace(/^mcp__sideboard__/i, "");
|
|
2123
2123
|
return ASK_USER_TOOL_RE.test(name) || /^ask_user$/i.test(base);
|
|
2124
2124
|
}
|
|
2125
|
+
function questionsFromToolPart(part) {
|
|
2126
|
+
const fromInput = parsePlanQuestionsInput(part.input);
|
|
2127
|
+
if (fromInput.length) return fromInput;
|
|
2128
|
+
const raw = part.result?.trim();
|
|
2129
|
+
if (!raw || !raw.startsWith("{")) return [];
|
|
2130
|
+
try {
|
|
2131
|
+
return parsePlanQuestionsInput(JSON.parse(raw));
|
|
2132
|
+
} catch {
|
|
2133
|
+
return [];
|
|
2134
|
+
}
|
|
2135
|
+
}
|
|
2125
2136
|
function extractPendingPlanQuestions(parts) {
|
|
2126
2137
|
if (!parts?.length) return null;
|
|
2127
2138
|
for (let i = parts.length - 1; i >= 0; i--) {
|
|
2128
2139
|
const p = parts[i];
|
|
2129
2140
|
if (p.type !== "tool" || !isAskUserToolName(p.name)) continue;
|
|
2130
|
-
const questions =
|
|
2141
|
+
const questions = questionsFromToolPart(p);
|
|
2131
2142
|
if (!questions.length) continue;
|
|
2132
2143
|
return {
|
|
2133
2144
|
id: p.id || `ask-${i}`,
|
|
@@ -18897,7 +18908,7 @@ function decisionBlockFromParts(parts, planMode, at = (/* @__PURE__ */ new Date(
|
|
|
18897
18908
|
const reason = pending ? formatAskUserNotifyMessage(pending.questions) : "Waiting for an answer in that chat.";
|
|
18898
18909
|
return {
|
|
18899
18910
|
...makeAgentBlock("ask_user", reason, at),
|
|
18900
|
-
...pending ? { questionSignature: pending.signature } : {}
|
|
18911
|
+
...pending ? { questionSignature: pending.signature, questions: pending.questions } : {}
|
|
18901
18912
|
};
|
|
18902
18913
|
}
|
|
18903
18914
|
if (!planMode || last?.type !== "tool") return null;
|
|
@@ -18912,14 +18923,24 @@ function decisionBlockFromParts(parts, planMode, at = (/* @__PURE__ */ new Date(
|
|
|
18912
18923
|
at
|
|
18913
18924
|
);
|
|
18914
18925
|
}
|
|
18926
|
+
function withStampedQuestions(decision, existing) {
|
|
18927
|
+
if (decision.source !== "ask_user" || decision.questions?.length) return decision;
|
|
18928
|
+
if (existing?.source !== "ask_user" || !existing.questions?.length) return decision;
|
|
18929
|
+
return {
|
|
18930
|
+
...decision,
|
|
18931
|
+
questions: existing.questions,
|
|
18932
|
+
questionSignature: decision.questionSignature ?? existing.questionSignature
|
|
18933
|
+
};
|
|
18934
|
+
}
|
|
18915
18935
|
function agentBlockAfterTurn(input) {
|
|
18916
18936
|
if (input.failed) return null;
|
|
18917
18937
|
const decision = decisionBlockFromParts(input.parts, input.planMode);
|
|
18918
18938
|
if (decision) {
|
|
18919
|
-
|
|
18939
|
+
const next = withStampedQuestions(decision, input.existing);
|
|
18940
|
+
if (isDismissedAskUserBlock(next, input.dismissedQuestionSignature)) {
|
|
18920
18941
|
return input.existing?.source === "reported" ? input.existing : null;
|
|
18921
18942
|
}
|
|
18922
|
-
return
|
|
18943
|
+
return next;
|
|
18923
18944
|
}
|
|
18924
18945
|
if (input.existing && input.existing.source !== "reported" && lastTopLevelTool(input.parts)) {
|
|
18925
18946
|
return null;
|
|
@@ -18962,7 +18983,7 @@ function settleAgentBlock(threadId, parts, failed) {
|
|
|
18962
18983
|
});
|
|
18963
18984
|
const prev = thread.agentBlock ?? null;
|
|
18964
18985
|
if (prev === next) return;
|
|
18965
|
-
if (prev && next && prev.source === next.source && prev.reason === next.reason && prev.at === next.at && prev.questionSignature === next.questionSignature) {
|
|
18986
|
+
if (prev && next && prev.source === next.source && prev.reason === next.reason && prev.at === next.at && prev.questionSignature === next.questionSignature && planQuestionsSignature(prev.questions ?? []) === planQuestionsSignature(next.questions ?? [])) {
|
|
18966
18987
|
return;
|
|
18967
18988
|
}
|
|
18968
18989
|
updateThread(threadId, { agentBlock: next });
|
|
@@ -18985,7 +19006,11 @@ function stampAskUserBlock(resolveCaller, questions) {
|
|
|
18985
19006
|
try {
|
|
18986
19007
|
writeAgentBlock(
|
|
18987
19008
|
resolveCaller().id,
|
|
18988
|
-
parsed.length ? {
|
|
19009
|
+
parsed.length ? {
|
|
19010
|
+
...block,
|
|
19011
|
+
questionSignature: planQuestionsSignature(parsed),
|
|
19012
|
+
questions: parsed
|
|
19013
|
+
} : block
|
|
18989
19014
|
);
|
|
18990
19015
|
} catch {
|
|
18991
19016
|
}
|
package/dist/mcp/run-stdio.js
CHANGED
|
@@ -56,7 +56,7 @@ import {
|
|
|
56
56
|
updateSchedule,
|
|
57
57
|
workspaceTagTargetRef,
|
|
58
58
|
writeAgentBlock
|
|
59
|
-
} from "../chunk-
|
|
59
|
+
} from "../chunk-T6TEANP5.js";
|
|
60
60
|
import "../chunk-LX5R5JOR.js";
|
|
61
61
|
import {
|
|
62
62
|
commentAbleTimeTask,
|
|
@@ -116,7 +116,7 @@ import {
|
|
|
116
116
|
waitForDetachedJob,
|
|
117
117
|
waitForTurnToolResult,
|
|
118
118
|
workspaceAgentChatSummaries
|
|
119
|
-
} from "../chunk-
|
|
119
|
+
} from "../chunk-HRPSFU4Q.js";
|
|
120
120
|
import {
|
|
121
121
|
HUGE_TOOL_RESULT_SUMMARY,
|
|
122
122
|
clipToolResultForStore,
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
resolveSendFollowUp,
|
|
12
12
|
startOrchestration,
|
|
13
13
|
waitForPidExit
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-T6TEANP5.js";
|
|
15
15
|
import "./chunk-LX5R5JOR.js";
|
|
16
16
|
import "./chunk-62ESCTJ4.js";
|
|
17
17
|
import "./chunk-4GK32AYX.js";
|
|
@@ -21,7 +21,7 @@ import "./chunk-EGTCXNQM.js";
|
|
|
21
21
|
import "./chunk-42JGPPVS.js";
|
|
22
22
|
import "./chunk-PXMLMBMI.js";
|
|
23
23
|
import "./chunk-2GPQZZLY.js";
|
|
24
|
-
import "./chunk-
|
|
24
|
+
import "./chunk-HRPSFU4Q.js";
|
|
25
25
|
import "./chunk-5XQ43YZU.js";
|
|
26
26
|
import "./chunk-X3FSWWW2.js";
|
|
27
27
|
import "./chunk-DLGGLV2M.js";
|
|
@@ -9,11 +9,11 @@ import {
|
|
|
9
9
|
resolveSendFollowUp,
|
|
10
10
|
startOrchestration,
|
|
11
11
|
waitForPidExit
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-GXFOZ5XL.js";
|
|
13
13
|
import "./chunk-PGPSIEMW.js";
|
|
14
14
|
import "./chunk-G2L3CR3A.js";
|
|
15
15
|
import "./chunk-VEVFHO6K.js";
|
|
16
|
-
import "./chunk-
|
|
16
|
+
import "./chunk-CTFBZZGZ.js";
|
|
17
17
|
import "./chunk-F36QRDM4.js";
|
|
18
18
|
import "./chunk-7H655NEW.js";
|
|
19
19
|
import "./chunk-WRZRX4Q7.js";
|