@sideboard-ai/core 0.1.242 → 0.1.244

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.
Files changed (52) hide show
  1. package/dist/{abletime-VSV6AUBV.js → abletime-CWIJ7INC.js} +4 -4
  2. package/dist/{abletime-UX4VUENQ.js → abletime-OI6FNSXX.js} +4 -4
  3. package/dist/{abletime-oauth-DKBUZV2C.js → abletime-oauth-CHVTUZBR.js} +3 -3
  4. package/dist/{abletime-oauth-QMDV45JC.js → abletime-oauth-PUIPZTA4.js} +3 -3
  5. package/dist/{abletime-rest-NL56UVK5.js → abletime-rest-32NIVXAY.js} +3 -3
  6. package/dist/{abletime-rest-VPBC2XS5.js → abletime-rest-APJUKFKL.js} +3 -3
  7. package/dist/{agents-PBRIHUYM.js → agents-BQZ2CHXK.js} +9 -5
  8. package/dist/{agents-CDQCQVWU.js → agents-Q23R4WOR.js} +9 -5
  9. package/dist/{app-settings-AGDLF75Z.js → app-settings-652J57CX.js} +1 -1
  10. package/dist/{app-settings-I27UBVI4.js → app-settings-VOPXJMGV.js} +1 -1
  11. package/dist/{chunk-3Q4PVZ3U.js → chunk-2QRU4IFI.js} +32 -5
  12. package/dist/{chunk-3PGFAVFL.js → chunk-43F44EKX.js} +2 -2
  13. package/dist/{chunk-LRMJ6V6U.js → chunk-4HMV53AB.js} +1506 -1465
  14. package/dist/{chunk-OKHOYI53.js → chunk-576S3HJ7.js} +5 -5
  15. package/dist/{chunk-TB6UMHIF.js → chunk-5ZFULOTC.js} +10 -2
  16. package/dist/{chunk-3AJUH66R.js → chunk-6I5YQTNK.js} +2 -1
  17. package/dist/{chunk-NJ5OXOTN.js → chunk-7HOKP4GR.js} +2 -1
  18. package/dist/{chunk-DXY4K5MP.js → chunk-BL2UGKWU.js} +3 -3
  19. package/dist/{chunk-CWHMLCLN.js → chunk-C64YQAA6.js} +3 -3
  20. package/dist/{chunk-QXYWLO6W.js → chunk-CYYQ6577.js} +28 -5
  21. package/dist/{chunk-O3UAQAYA.js → chunk-E6C5NR46.js} +10 -2
  22. package/dist/{chunk-CRAXJAYJ.js → chunk-G45QP2ZD.js} +3 -3
  23. package/dist/{chunk-BILEJG3V.js → chunk-GFRC6JQN.js} +5 -5
  24. package/dist/{chunk-YXOOSFAF.js → chunk-IMO7AZI4.js} +2 -2
  25. package/dist/{chunk-DJU54RYW.js → chunk-PGPSIEMW.js} +13 -0
  26. package/dist/{chunk-P3DCZRER.js → chunk-PPJ5JTWA.js} +1 -0
  27. package/dist/{chunk-5ELC3KK3.js → chunk-QNJXJIWJ.js} +5 -5
  28. package/dist/{chunk-JFOPOMK7.js → chunk-WDDUIGFK.js} +13 -0
  29. package/dist/{chunk-IVXPXYH2.js → chunk-WURF67ID.js} +5 -5
  30. package/dist/{chunk-R3YKDTVE.js → chunk-YJJ2A5CI.js} +1572 -1529
  31. package/dist/{chunk-QLWMHQPH.js → chunk-YLGBQVRK.js} +1 -0
  32. package/dist/{coordinator-prompt-5UINTEA6.js → coordinator-prompt-WQIICPT6.js} +4 -4
  33. package/dist/{coordinator-prompt-ATK73HYU.js → coordinator-prompt-ZBYRREHD.js} +4 -4
  34. package/dist/{global-workspace-ZJBBICFJ.js → global-workspace-2N6KISDO.js} +4 -4
  35. package/dist/{global-workspace-TD5SARNW.js → global-workspace-3SQU4GL4.js} +4 -4
  36. package/dist/index.cjs +590 -470
  37. package/dist/index.d.cts +50 -3
  38. package/dist/index.d.ts +50 -3
  39. package/dist/index.js +73 -39
  40. package/dist/mcp/run-stdio.cjs +1649 -1552
  41. package/dist/mcp/run-stdio.js +51 -37
  42. package/dist/{orchestrator-VYNPNHY4.js → orchestrator-ABF6QFE6.js} +7 -7
  43. package/dist/{orchestrator-66ZFQHW5.js → orchestrator-ZJ6SYGW7.js} +7 -7
  44. package/dist/{plan-file-UUKCZEYP.js → plan-file-7MMIPV7Y.js} +9 -1
  45. package/dist/{plan-file-2EPHYRX7.js → plan-file-CKXUFTQ2.js} +9 -1
  46. package/dist/{thread-store-YOPKY74K.js → thread-store-JQB7KZJR.js} +1 -1
  47. package/dist/{thread-store-AYPBEZT5.js → thread-store-SCV2IZYS.js} +1 -1
  48. package/dist/{workspaces-JX5R4V24.js → workspaces-CFI7XVAE.js} +4 -4
  49. package/dist/{workspaces-4SFSCYKT.js → workspaces-QLKWW3O2.js} +4 -4
  50. package/dist/{worktree-AGVPKDBH.js → worktree-4UAOZUJ4.js} +5 -3
  51. package/dist/{worktree-Y5FES5D6.js → worktree-PK3QETXO.js} +5 -3
  52. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -20,7 +20,7 @@ import {
20
20
  parseAbleTimeOAuthCallbackUrl,
21
21
  resolveAbleTimeOAuthHost,
22
22
  startAbleTimeOAuth
23
- } from "./chunk-CWHMLCLN.js";
23
+ } from "./chunk-C64YQAA6.js";
24
24
  import {
25
25
  ableTimeDependencyTarget,
26
26
  commentAbleTimeTask,
@@ -38,8 +38,8 @@ import {
38
38
  toAbleTimeIssueInfo,
39
39
  updateAbleTimeTask,
40
40
  verifyAbleTimeConnection
41
- } from "./chunk-CRAXJAYJ.js";
42
- import "./chunk-3PGFAVFL.js";
41
+ } from "./chunk-G45QP2ZD.js";
42
+ import "./chunk-43F44EKX.js";
43
43
  import {
44
44
  ABLETIME_MCP_PATH,
45
45
  ABLETIME_MCP_PM_PATH,
@@ -60,7 +60,7 @@ import {
60
60
  normalizeAbleTimeCredential,
61
61
  normalizeAbleTimeHost,
62
62
  rewriteAbleTimeError
63
- } from "./chunk-5ELC3KK3.js";
63
+ } from "./chunk-QNJXJIWJ.js";
64
64
  import {
65
65
  AGENT_GIT_ACTIONS,
66
66
  BOARD_COLUMN_DEFS,
@@ -107,6 +107,7 @@ import {
107
107
  alignQueueAttachments,
108
108
  allocatePort,
109
109
  allocatePortRange,
110
+ appendCompactedMessages,
110
111
  appendQueuedItem,
111
112
  applyCompaction,
112
113
  applyForwardOccupancy,
@@ -127,6 +128,7 @@ import {
127
128
  cleanupArchivedHistory,
128
129
  cleanupOrphanWorktrees,
129
130
  cloneRepoIntoSideboard,
131
+ compactArchiveProse,
130
132
  computeNextRunAt,
131
133
  conductorDbPath,
132
134
  confirmLand,
@@ -254,6 +256,7 @@ import {
254
256
  mcpWaitTaskHint,
255
257
  mentionsPrGoal,
256
258
  mergeSetupOutput,
259
+ messagesForCompactArchive,
257
260
  messagesSinceLastBrightsyContextSummary,
258
261
  moveQueuedItemToFront,
259
262
  needsCoordinatorAction,
@@ -333,23 +336,28 @@ import {
333
336
  worktreeRunPortsPath,
334
337
  wrapReviewSkillMarkdown,
335
338
  writeWorktreeFile
336
- } from "./chunk-R3YKDTVE.js";
339
+ } from "./chunk-YJJ2A5CI.js";
337
340
  import {
338
341
  LEGACY_PLAN_FILE_REL,
339
342
  PLAN_FILE_NAME,
340
343
  PLAN_FILE_REL,
344
+ PRESENT_PLAN_REQUIRES_PLAN_MODE,
345
+ PRESENT_PLAN_TOOL_DESCRIPTION,
341
346
  extractPresentedPlan,
342
347
  isPresentPlanToolName,
343
348
  planFileAbs,
344
349
  readPlanFile,
345
350
  resolvePlanMarkdown,
351
+ shouldRegisterPresentPlan,
352
+ threadMayPresentPlan,
346
353
  writePlanFile
347
- } from "./chunk-DJU54RYW.js";
354
+ } from "./chunk-PGPSIEMW.js";
348
355
  import {
349
356
  BRIGHTSY_MCP_ALLOWED_TOOLS,
350
357
  CLAUDE_MODEL_CATALOG,
351
358
  MAX_ANTHROPIC_CACHE_CONTROL_BLOCKS,
352
359
  PLAN_MODE_INSTRUCTION,
360
+ PLAN_MODE_OFF_INSTRUCTION,
353
361
  SIDEBOARD_MCP_ALLOWED_TOOLS,
354
362
  SIDEBOARD_MCP_PROFILE_ENV,
355
363
  SIDEBOARD_THREAD_ID_ENV,
@@ -371,6 +379,8 @@ import {
371
379
  clipAgentEventForPaint,
372
380
  clipThinkingForStore,
373
381
  codexAdapter,
382
+ compactPartsForSummaryMessage,
383
+ compactSummaryPart,
374
384
  countCacheControlBlocks,
375
385
  cursorAdapter,
376
386
  decodeBrightsyTarget,
@@ -434,6 +444,7 @@ import {
434
444
  parseSessionQuotaResetAt,
435
445
  partsToAssistantText,
436
446
  permissionMode,
447
+ planModeTurnInstruction,
437
448
  prepareTerminalCommand,
438
449
  promptMentionsBrightsy,
439
450
  registerPackagedUserMcpClients,
@@ -461,7 +472,7 @@ import {
461
472
  withEventParentId,
462
473
  withEventsParentId,
463
474
  writeInjectedMcpConfig
464
- } from "./chunk-QXYWLO6W.js";
475
+ } from "./chunk-CYYQ6577.js";
465
476
  import {
466
477
  CLOUD_COORDINATOR_BUSY_REPLY,
467
478
  CLOUD_COORDINATOR_CANCELED_REPLY,
@@ -507,7 +518,7 @@ import {
507
518
  stageBuffersAsAttachments,
508
519
  syncWorkspacesFromThreads,
509
520
  takenTeamSlugsForOrchestration
510
- } from "./chunk-BILEJG3V.js";
521
+ } from "./chunk-GFRC6JQN.js";
511
522
  import {
512
523
  FAMOUS_SOCCER_TEAMS,
513
524
  GITHUB_PR_BODY_MAX_CHARS,
@@ -551,6 +562,7 @@ import {
551
562
  getPrMeta,
552
563
  getPrStack,
553
564
  ghHeadRef,
565
+ ghPrCreateAssigneeArgs,
554
566
  ghRepoSelectArgs,
555
567
  githubAgentGitEnv,
556
568
  githubHttpsInsteadOfEntries,
@@ -605,7 +617,7 @@ import {
605
617
  worktreeDisplayLabelForGroup,
606
618
  worktreeNameFromPath,
607
619
  worktreeSlugForTicket
608
- } from "./chunk-O3UAQAYA.js";
620
+ } from "./chunk-E6C5NR46.js";
609
621
  import {
610
622
  ATTACHMENTS_DIR,
611
623
  CLI_DIR,
@@ -787,7 +799,7 @@ import {
787
799
  usageOnLimit,
788
800
  writeSecureJson,
789
801
  writeViewerContext
790
- } from "./chunk-P3DCZRER.js";
802
+ } from "./chunk-PPJ5JTWA.js";
791
803
  import {
792
804
  examplePrefixedBranch,
793
805
  resolveGitBranchPrefix,
@@ -820,7 +832,7 @@ import {
820
832
  updateThread,
821
833
  withThreadLock,
822
834
  writeThread
823
- } from "./chunk-3AJUH66R.js";
835
+ } from "./chunk-6I5YQTNK.js";
824
836
  import "./chunk-224IXQOM.js";
825
837
  import {
826
838
  THINKING_EFFORTS,
@@ -980,7 +992,8 @@ function slimThreadForUiList(thread) {
980
992
  attachments: [],
981
993
  pendingTurnAttachments: [],
982
994
  queueAttachments: [],
983
- messages: slimMessagesForUiList(messages, thread.updatedAt)
995
+ messages: slimMessagesForUiList(messages, thread.updatedAt),
996
+ compactedMessages: void 0
984
997
  };
985
998
  }
986
999
  function slimMessagesForUiList(messages, fallbackTs) {
@@ -3947,7 +3960,7 @@ async function continueSourceThread(threadId, prompt) {
3947
3960
  await continueOnReply(threadId, prompt);
3948
3961
  return;
3949
3962
  }
3950
- const { getOrchestrator: getOrchestrator2 } = await import("./orchestrator-VYNPNHY4.js");
3963
+ const { getOrchestrator: getOrchestrator2 } = await import("./orchestrator-ABF6QFE6.js");
3951
3964
  await getOrchestrator2().send(threadId, prompt);
3952
3965
  } catch {
3953
3966
  }
@@ -6062,7 +6075,7 @@ async function startMcpServer() {
6062
6075
  );
6063
6076
  }
6064
6077
  try {
6065
- const { maxConcurrentAgents: maxConcurrentAgents2 } = await import("./app-settings-I27UBVI4.js");
6078
+ const { maxConcurrentAgents: maxConcurrentAgents2 } = await import("./app-settings-VOPXJMGV.js");
6066
6079
  orch.setMaxConcurrent(maxConcurrentAgents2());
6067
6080
  } catch {
6068
6081
  }
@@ -6287,31 +6300,40 @@ async function startMcpServer() {
6287
6300
  return mcpJson(payload);
6288
6301
  }
6289
6302
  );
6290
- server.tool(
6291
- "present_plan",
6292
- "Save the implementation plan as markdown to .context/attachments/plan.md and show it in Sideboard chat for user approval (Copy / Hand off / Approve). Call this when the plan is ready \u2014 required in plan mode. Pass the full plan body in content. Then Claude should call ExitPlanMode.",
6293
- {
6294
- title: z9.string().optional().describe("Short plan title (defaults to Plan)"),
6295
- content: z9.string().min(1).describe("Full plan markdown (headings, steps, risks, open questions)"),
6296
- thread_id: z9.string().optional().describe("Sideboard thread id when cwd is not the worktree")
6297
- },
6298
- async ({ title, content, thread_id }) => {
6299
- const { writePlanFile: writePlanFile2 } = await import("./plan-file-UUKCZEYP.js");
6300
- let root = process.cwd();
6301
- if (thread_id?.trim()) {
6302
- const t = orch.getThread(thread_id.trim());
6303
+ const callingThreadId = process.env[SIDEBOARD_THREAD_ID_ENV]?.trim() || "";
6304
+ const callingThread = callingThreadId ? orch.getThread(callingThreadId) : null;
6305
+ if (shouldRegisterPresentPlan(callingThread)) {
6306
+ server.tool(
6307
+ "present_plan",
6308
+ PRESENT_PLAN_TOOL_DESCRIPTION,
6309
+ {
6310
+ title: z9.string().optional().describe("Short plan title (defaults to Plan)"),
6311
+ content: z9.string().min(1).describe("Full plan markdown (headings, steps, risks, open questions)"),
6312
+ thread_id: z9.string().optional().describe("Sideboard thread id when cwd is not the worktree")
6313
+ },
6314
+ async ({ title, content, thread_id }) => {
6315
+ const { writePlanFile: writePlanFile2 } = await import("./plan-file-7MMIPV7Y.js");
6316
+ const ref = thread_id?.trim() || callingThreadId;
6317
+ const t = ref ? orch.getThread(ref) : null;
6318
+ if (t && !threadMayPresentPlan(t)) {
6319
+ return mcpJson(
6320
+ { ok: false, error: PRESENT_PLAN_REQUIRES_PLAN_MODE },
6321
+ true
6322
+ );
6323
+ }
6324
+ let root = process.cwd();
6303
6325
  if (t?.worktreePath?.trim()) root = t.worktreePath;
6326
+ const path2 = writePlanFile2(root, content);
6327
+ const payload = {
6328
+ ok: true,
6329
+ path: path2,
6330
+ title: title?.trim() || "Plan",
6331
+ message: "Plan saved to .context/attachments/plan.md and shown in Sideboard chat for approval."
6332
+ };
6333
+ return mcpJson(payload);
6304
6334
  }
6305
- const path2 = writePlanFile2(root, content);
6306
- const payload = {
6307
- ok: true,
6308
- path: path2,
6309
- title: title?.trim() || "Plan",
6310
- message: "Plan saved to .context/attachments/plan.md and shown in Sideboard chat for approval."
6311
- };
6312
- return mcpJson(payload);
6313
- }
6314
- );
6335
+ );
6336
+ }
6315
6337
  server.tool(
6316
6338
  "present_schema",
6317
6339
  "Open Sideboard\u2019s schema-driven side column (filterable table and/or form) when the user needs to filter, edit, publish, or persist records. Do not call this just to re-display rows you already wrote as a markdown table. If the user asks for an editable / interactive table, call this even if chat already showed those rows. Pass JSON Schema + optional schemaUi. Prefer datasource=inline with embedded resource/records. Use datasource=brightsy with resource_id only when the user is logged into Brightsy.",
@@ -6548,7 +6570,7 @@ async function startMcpServer() {
6548
6570
  registerConnectedIssueVendorTools(server);
6549
6571
  registerScheduleTools(server);
6550
6572
  const { getCaffeinateHold: getCaffeinateHold2, setCaffeinateHold: setCaffeinateHold2 } = await import("./caffeinate-hold-PXHGH7ZN.js");
6551
- const { resolveNewThreadOptions: resolveNewThreadOptions2, resolveThreadDefaults: resolveThreadDefaults2 } = await import("./app-settings-I27UBVI4.js");
6573
+ const { resolveNewThreadOptions: resolveNewThreadOptions2, resolveThreadDefaults: resolveThreadDefaults2 } = await import("./app-settings-VOPXJMGV.js");
6552
6574
  const accountDefaults = resolveThreadDefaults2();
6553
6575
  const accountDefaultsHint = `Account defaults: agent=${accountDefaults.agent}, model=${accountDefaults.model?.trim() || "Auto"}, effort=${accountDefaults.effort}`;
6554
6576
  server.tool(
@@ -6919,7 +6941,7 @@ async function startMcpServer() {
6919
6941
  error: true,
6920
6942
  action,
6921
6943
  lastError: message,
6922
- hint: /body is too long/i.test(message) ? "Branch is already pushed. send_to_thread so the worktree agent runs gh pr create --draft -R <origin> --body-file <short.md>. Keep the description short." : void 0
6944
+ hint: /body is too long/i.test(message) ? "Branch is already pushed. send_to_thread so the worktree agent runs gh pr create --draft --assignee @me -R <origin> --body-file <short.md>. Keep the description short." : void 0
6923
6945
  },
6924
6946
  true
6925
6947
  );
@@ -9613,8 +9635,11 @@ export {
9613
9635
  PLAN_FILE_NAME,
9614
9636
  PLAN_FILE_REL,
9615
9637
  PLAN_MODE_INSTRUCTION,
9638
+ PLAN_MODE_OFF_INSTRUCTION,
9616
9639
  PLAN_QUESTION_ANSWERS_PREFIX,
9617
9640
  PORT_RANGE_SIZE,
9641
+ PRESENT_PLAN_REQUIRES_PLAN_MODE,
9642
+ PRESENT_PLAN_TOOL_DESCRIPTION,
9618
9643
  PROFILE_NOTES_MAX,
9619
9644
  PR_DETAILS_JSON_FIELDS,
9620
9645
  REPO_REVIEW_NAME,
@@ -9685,6 +9710,7 @@ export {
9685
9710
  annotateDevAccessRuns,
9686
9711
  appDataDir,
9687
9712
  appSettingsPath,
9713
+ appendCompactedMessages,
9688
9714
  appendIndexedGitConfig,
9689
9715
  appendMessage,
9690
9716
  appendQueuedItem,
@@ -9772,6 +9798,9 @@ export {
9772
9798
  commentGitHubIssue,
9773
9799
  commentLinearIssue,
9774
9800
  commitAll,
9801
+ compactArchiveProse,
9802
+ compactPartsForSummaryMessage,
9803
+ compactSummaryPart,
9775
9804
  computeNextRunAt,
9776
9805
  conductorBundledBinDir,
9777
9806
  conductorDbPath,
@@ -9979,6 +10008,7 @@ export {
9979
10008
  getWorktreeDirtyStat,
9980
10009
  gh,
9981
10010
  ghHeadRef,
10011
+ ghPrCreateAssigneeArgs,
9982
10012
  ghRepoSelectArgs,
9983
10013
  git,
9984
10014
  gitBranchPrefixSetting,
@@ -10171,6 +10201,7 @@ export {
10171
10201
  mergeSideboardIntoMcpServersJson,
10172
10202
  mergeUsage,
10173
10203
  messagePartParentId,
10204
+ messagesForCompactArchive,
10174
10205
  messagesSinceLastBrightsyContextSummary,
10175
10206
  moveQueuedItemToFront,
10176
10207
  needsCoordinatorAction,
@@ -10230,6 +10261,7 @@ export {
10230
10261
  planFileAbs,
10231
10262
  planHistoryAgePurge,
10232
10263
  planHistoryRetention,
10264
+ planModeTurnInstruction,
10233
10265
  planQuestionsSignature,
10234
10266
  pnpmFilterPackage,
10235
10267
  pollSlackOutboundWatches,
@@ -10357,6 +10389,7 @@ export {
10357
10389
  shouldInjectBrightsyMcp,
10358
10390
  shouldNotifyOrchestrator,
10359
10391
  shouldRefreshReviewRequestTemplate,
10392
+ shouldRegisterPresentPlan,
10360
10393
  shouldRemoveWorktreeOnTeardown,
10361
10394
  shouldResetSessionForOccupancy,
10362
10395
  shouldRunHistoryCleanup,
@@ -10418,6 +10451,7 @@ export {
10418
10451
  threadHasCompactedContext,
10419
10452
  threadLivePath,
10420
10453
  threadLockPath,
10454
+ threadMayPresentPlan,
10421
10455
  threadRequestsBrightsyMcp,
10422
10456
  threadsDir,
10423
10457
  threadsSharingWorktree,