@sideboard-ai/core 0.1.111 → 0.1.116

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 (43) hide show
  1. package/dist/agents/cursor-runner.cjs +51 -21
  2. package/dist/agents/cursor-runner.js +3 -3
  3. package/dist/{agents-NN22A4G5.js → agents-7NIX44RB.js} +7 -7
  4. package/dist/{agents-GH3FWDW2.js → agents-DU7DHY7A.js} +10 -10
  5. package/dist/{chunk-JTQQPJAU.js → chunk-4HOFVKPC.js} +52 -38
  6. package/dist/{chunk-4EWPKYOU.js → chunk-4OJMZ6P2.js} +2 -2
  7. package/dist/{chunk-NC3U42ZP.js → chunk-5KSLD4MU.js} +317 -33
  8. package/dist/{chunk-KQBI5HNT.js → chunk-7WC5UWEB.js} +2 -2
  9. package/dist/{chunk-WIHKHR5R.js → chunk-AXQ4ZWHK.js} +5 -0
  10. package/dist/{chunk-LGXBYZZA.js → chunk-DVM4ID64.js} +69 -13
  11. package/dist/{chunk-DMJKOFTO.js → chunk-DWP25N32.js} +44 -35
  12. package/dist/{chunk-2GO3YKBA.js → chunk-EKIDHL2T.js} +4 -4
  13. package/dist/{chunk-C4KHDW3U.js → chunk-FZCIQYNQ.js} +1 -1
  14. package/dist/{chunk-363Z34PY.js → chunk-GBY7OOMB.js} +273 -218
  15. package/dist/{chunk-7KWYXGIU.js → chunk-K3TIQXOH.js} +2 -2
  16. package/dist/{chunk-3KETJKYA.js → chunk-KPIYENTF.js} +69 -13
  17. package/dist/{chunk-KVFNTWFG.js → chunk-OFF5AFCR.js} +300 -43
  18. package/dist/{chunk-VOD3HFLP.js → chunk-XOYQ7LNQ.js} +2 -2
  19. package/dist/{chunk-7YKXHBIW.js → chunk-YMRT2DU6.js} +3 -3
  20. package/dist/{chunk-YXDR43ZC.js → chunk-ZMROW673.js} +5 -5
  21. package/dist/{chunk-YFAXVUY2.js → chunk-ZRCX43LS.js} +2 -2
  22. package/dist/{chunk-AROMOP3C.js → chunk-ZYEFCSZJ.js} +2 -2
  23. package/dist/{connected-teams-M5XNXRI5.js → connected-teams-O6D4PM7A.js} +2 -2
  24. package/dist/{connected-teams-J4I5AKMR.js → connected-teams-ZCOU6KCD.js} +2 -2
  25. package/dist/{coordinator-prompt-AR66L3N4.js → coordinator-prompt-4KCALEKD.js} +3 -3
  26. package/dist/{coordinator-prompt-BHMLWL64.js → coordinator-prompt-FML4I5AR.js} +3 -3
  27. package/dist/{global-workspace-XSUFEIAQ.js → global-workspace-CSWABOG5.js} +4 -4
  28. package/dist/{global-workspace-SKFODUQQ.js → global-workspace-H4YNASM6.js} +4 -4
  29. package/dist/index.cjs +855 -440
  30. package/dist/index.d.cts +59 -1
  31. package/dist/index.d.ts +59 -1
  32. package/dist/index.js +37 -17
  33. package/dist/mcp/run-stdio.cjs +966 -635
  34. package/dist/mcp/run-stdio.js +20 -16
  35. package/dist/{orchestrator-4T2SXDZ7.js → orchestrator-NXPANCZA.js} +8 -8
  36. package/dist/{orchestrator-EP57AB5W.js → orchestrator-ZY4RUJKT.js} +10 -10
  37. package/dist/{run-XKTAJRWF.js → run-USF6FRKV.js} +3 -1
  38. package/dist/{run-CFKZPY7F.js → run-XQKGHQZ2.js} +3 -1
  39. package/dist/{workspaces-XAQVKTLO.js → workspaces-HJ3EVATC.js} +5 -5
  40. package/dist/{workspaces-HV3J4TTW.js → workspaces-QG6PGFQR.js} +5 -5
  41. package/dist/{worktree-XFJED3VU.js → worktree-IW3BX26B.js} +2 -2
  42. package/dist/{worktree-N2EV24EE.js → worktree-OTFQO2W7.js} +2 -2
  43. package/package.json +1 -1
@@ -19,29 +19,32 @@ import {
19
19
  slackApi,
20
20
  slackTokenFor,
21
21
  updateSchedule
22
- } from "../chunk-JTQQPJAU.js";
22
+ } from "../chunk-4HOFVKPC.js";
23
23
  import {
24
24
  listModelsForAgent,
25
25
  sideboardMcpProfile
26
- } from "../chunk-KVFNTWFG.js";
27
- import "../chunk-7YKXHBIW.js";
28
- import "../chunk-YFAXVUY2.js";
26
+ } from "../chunk-OFF5AFCR.js";
27
+ import "../chunk-YMRT2DU6.js";
28
+ import "../chunk-ZRCX43LS.js";
29
29
  import "../chunk-N5PM7HGQ.js";
30
30
  import "../chunk-KLBOWJ74.js";
31
31
  import {
32
32
  GLOBAL_WORKSPACE_ID,
33
33
  isCloudCoordinatorThread
34
- } from "../chunk-VOD3HFLP.js";
35
- import "../chunk-AROMOP3C.js";
34
+ } from "../chunk-XOYQ7LNQ.js";
35
+ import "../chunk-ZYEFCSZJ.js";
36
36
  import {
37
37
  listBranches,
38
38
  listPrs,
39
39
  resolveGithubRepoSlug,
40
40
  resolveRepoRoot,
41
41
  warmGithubAgentAuth
42
- } from "../chunk-YXDR43ZC.js";
42
+ } from "../chunk-ZMROW673.js";
43
43
  import "../chunk-B3SJXYIJ.js";
44
44
  import "../chunk-KYOTBZ6S.js";
45
+ import {
46
+ gh
47
+ } from "../chunk-KPIYENTF.js";
45
48
  import {
46
49
  disconnectLinearConnection,
47
50
  dropNestedElectronEnvFromProcess,
@@ -53,9 +56,6 @@ import {
53
56
  import "../chunk-NSTQ6QKD.js";
54
57
  import "../chunk-KGZBYWZ3.js";
55
58
  import "../chunk-BD2ICC4D.js";
56
- import {
57
- gh
58
- } from "../chunk-3KETJKYA.js";
59
59
 
60
60
  // src/mcp/server.ts
61
61
  import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
@@ -551,6 +551,10 @@ function mcpWaitForTurnTimeoutMs(requested) {
551
551
  return Math.min(Math.max(1e3, Math.floor(n)), MCP_WAIT_FOR_TURN_MAX_MS);
552
552
  }
553
553
  var MCP_WAIT_STILL_RUNNING_HINT = "Child is still working. Call wait_for_turn again. Do not send a check-in prompt or assume a hang while progress is updating.";
554
+ var MCP_WAIT_QUEUED_HINT = "Child is queued waiting for a concurrency slot \u2014 it has not started yet. Call wait_for_turn again. Do not send a check-in prompt, force_stop, or assume it failed to start.";
555
+ function mcpWaitStillRunningHint(status) {
556
+ return status === "queued" ? MCP_WAIT_QUEUED_HINT : MCP_WAIT_STILL_RUNNING_HINT;
557
+ }
554
558
 
555
559
  // src/mcp/slack-tools.ts
556
560
  import { z } from "zod";
@@ -1422,7 +1426,7 @@ async function startMcpServer() {
1422
1426
  prUrl: t.prUrl,
1423
1427
  lastError: t.lastError ?? null,
1424
1428
  stillRunning: t.status === "running" || t.status === "queued",
1425
- progress: live?.summary ?? null,
1429
+ progress: live?.summary ?? (t.status === "queued" ? "Queued \u2014 waiting for a concurrency slot" : null),
1426
1430
  lastActivityAt: live?.updatedAt ?? null
1427
1431
  };
1428
1432
  return { content: [{ type: "text", text: JSON.stringify(summary, null, 2) }] };
@@ -1431,7 +1435,7 @@ async function startMcpServer() {
1431
1435
  }
1432
1436
  server.tool(
1433
1437
  "present_artifact",
1434
- "Show an HTML, SVG, markdown, or React document in Sideboard\u2019s Claude-style side column (desktop). Use instead of claude.ai\u2019s artifact tool \u2014 pass the full document content. Prefer type=html for interactive pages. For type=react, pass a single component module that `export default`s a component (JSX/TSX ok) \u2014 Sideboard bootstraps React/ReactDOM/Babel and renders it; only `react`/`react-dom` imports are available, no other npm packages.",
1438
+ "Show an HTML, SVG, markdown, or React document in Sideboard\u2019s Claude-style side column (desktop). Use instead of claude.ai\u2019s artifact tool \u2014 pass the full document content. Do not also emit the same document as a chat html/markdown fence. Prefer type=html for interactive pages. For type=react, pass a single component module that `export default`s a component (JSX/TSX ok) \u2014 Sideboard bootstraps React/ReactDOM/Babel and renders it; only `react`/`react-dom` imports are available, no other npm packages.",
1435
1439
  {
1436
1440
  title: z4.string().describe("Short title shown in the artifact pane header"),
1437
1441
  type: z4.enum(["html", "svg", "markdown", "react"]).describe(
@@ -1508,7 +1512,7 @@ async function startMcpServer() {
1508
1512
  );
1509
1513
  server.tool(
1510
1514
  "present_schema",
1511
- "Open Sideboard\u2019s schema-driven side column (filterable table and/or form). 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.",
1515
+ "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.",
1512
1516
  {
1513
1517
  title: z4.string().describe("Pane title"),
1514
1518
  mode: z4.enum(["table", "form"]).optional().describe("table = list/filter records; form = edit one record"),
@@ -1756,7 +1760,7 @@ async function startMcpServer() {
1756
1760
  );
1757
1761
  server.tool(
1758
1762
  "wait_for_turn",
1759
- "Wait until the thread finishes its current/queued turn, or return early with a live progress snapshot. MCP clients often kill tools around 60s, so this returns within 45s even while the child is still working. If stillRunning is true, progress is tools/thinking \u2014 call wait_for_turn again. Do not send a check-in prompt or assume a hang. On status error, lastError/text is the failure.",
1763
+ "Wait until the thread finishes its current/queued turn, or return early with a live progress snapshot. MCP clients often kill tools around 60s, so this returns within 45s even while the child is still working. If stillRunning is true, progress is tools/thinking (or \u201Cqueued, waiting for a concurrency slot\u201D if it has not started). Call wait_for_turn again. Do not send a check-in prompt, force_stop, or assume a hang. On status error, lastError/text is the failure.",
1760
1764
  {
1761
1765
  ref: z4.string(),
1762
1766
  timeoutMs: z4.number().optional()
@@ -1778,7 +1782,7 @@ async function startMcpServer() {
1778
1782
  stillRunning: result.stillRunning,
1779
1783
  progress: result.progress,
1780
1784
  lastActivityAt: result.lastActivityAt,
1781
- hint: result.stillRunning ? MCP_WAIT_STILL_RUNNING_HINT : void 0
1785
+ hint: result.stillRunning ? mcpWaitStillRunningHint(result.status) : void 0
1782
1786
  })
1783
1787
  }
1784
1788
  ]
@@ -1797,7 +1801,7 @@ async function startMcpServer() {
1797
1801
  type: "text",
1798
1802
  text: JSON.stringify({
1799
1803
  ...result,
1800
- hint: result.stillRunning ? MCP_WAIT_STILL_RUNNING_HINT : void 0
1804
+ hint: result.stillRunning ? mcpWaitStillRunningHint(result.status) : void 0
1801
1805
  })
1802
1806
  }
1803
1807
  ]
@@ -6,22 +6,22 @@ import {
6
6
  isPidAlive,
7
7
  startOrchestration,
8
8
  waitForPidExit
9
- } from "./chunk-JTQQPJAU.js";
10
- import "./chunk-KVFNTWFG.js";
11
- import "./chunk-7YKXHBIW.js";
12
- import "./chunk-YFAXVUY2.js";
9
+ } from "./chunk-4HOFVKPC.js";
10
+ import "./chunk-OFF5AFCR.js";
11
+ import "./chunk-YMRT2DU6.js";
12
+ import "./chunk-ZRCX43LS.js";
13
13
  import "./chunk-N5PM7HGQ.js";
14
14
  import "./chunk-KLBOWJ74.js";
15
- import "./chunk-VOD3HFLP.js";
16
- import "./chunk-AROMOP3C.js";
17
- import "./chunk-YXDR43ZC.js";
15
+ import "./chunk-XOYQ7LNQ.js";
16
+ import "./chunk-ZYEFCSZJ.js";
17
+ import "./chunk-ZMROW673.js";
18
18
  import "./chunk-B3SJXYIJ.js";
19
19
  import "./chunk-KYOTBZ6S.js";
20
+ import "./chunk-KPIYENTF.js";
20
21
  import "./chunk-SGEVS5SY.js";
21
22
  import "./chunk-NSTQ6QKD.js";
22
23
  import "./chunk-KGZBYWZ3.js";
23
24
  import "./chunk-BD2ICC4D.js";
24
- import "./chunk-3KETJKYA.js";
25
25
  export {
26
26
  Orchestrator,
27
27
  getOrchestrator,
@@ -4,17 +4,17 @@ import {
4
4
  isPidAlive,
5
5
  startOrchestration,
6
6
  waitForPidExit
7
- } from "./chunk-DMJKOFTO.js";
8
- import "./chunk-NC3U42ZP.js";
9
- import "./chunk-2GO3YKBA.js";
10
- import "./chunk-7KWYXGIU.js";
11
- import "./chunk-4EWPKYOU.js";
12
- import "./chunk-KQBI5HNT.js";
7
+ } from "./chunk-DWP25N32.js";
8
+ import "./chunk-5KSLD4MU.js";
9
+ import "./chunk-EKIDHL2T.js";
10
+ import "./chunk-K3TIQXOH.js";
11
+ import "./chunk-4OJMZ6P2.js";
12
+ import "./chunk-7WC5UWEB.js";
13
13
  import "./chunk-QTUESPAW.js";
14
- import "./chunk-WIHKHR5R.js";
15
- import "./chunk-363Z34PY.js";
14
+ import "./chunk-AXQ4ZWHK.js";
15
+ import "./chunk-GBY7OOMB.js";
16
16
  import "./chunk-DCOZABNT.js";
17
- import "./chunk-C4KHDW3U.js";
17
+ import "./chunk-FZCIQYNQ.js";
18
18
  import "./chunk-FKOIHGKV.js";
19
19
  import "./chunk-4NR5FL46.js";
20
20
  import "./chunk-4TR3HZFT.js";
@@ -22,7 +22,7 @@ import "./chunk-JT7R45JB.js";
22
22
  import "./chunk-A4VZXJEJ.js";
23
23
  import "./chunk-77WWLBCI.js";
24
24
  import "./chunk-QZQEXME2.js";
25
- import "./chunk-LGXBYZZA.js";
25
+ import "./chunk-DVM4ID64.js";
26
26
  export {
27
27
  Orchestrator,
28
28
  getOrchestrator,
@@ -4,11 +4,13 @@ import {
4
4
  gh,
5
5
  git,
6
6
  resolveGhAuthToken,
7
+ resolveGitDirsForLockRecovery,
7
8
  run
8
- } from "./chunk-3KETJKYA.js";
9
+ } from "./chunk-KPIYENTF.js";
9
10
  export {
10
11
  gh,
11
12
  git,
12
13
  resolveGhAuthToken,
14
+ resolveGitDirsForLockRecovery,
13
15
  run
14
16
  };
@@ -2,11 +2,13 @@ import {
2
2
  gh,
3
3
  git,
4
4
  resolveGhAuthToken,
5
+ resolveGitDirsForLockRecovery,
5
6
  run
6
- } from "./chunk-LGXBYZZA.js";
7
+ } from "./chunk-DVM4ID64.js";
7
8
  export {
8
9
  gh,
9
10
  git,
10
11
  resolveGhAuthToken,
12
+ resolveGitDirsForLockRecovery,
11
13
  run
12
14
  };
@@ -6,17 +6,17 @@ import {
6
6
  listWorkspaces,
7
7
  removeWorkspace,
8
8
  syncWorkspacesFromThreads
9
- } from "./chunk-YFAXVUY2.js";
10
- import "./chunk-VOD3HFLP.js";
11
- import "./chunk-AROMOP3C.js";
12
- import "./chunk-YXDR43ZC.js";
9
+ } from "./chunk-ZRCX43LS.js";
10
+ import "./chunk-XOYQ7LNQ.js";
11
+ import "./chunk-ZYEFCSZJ.js";
12
+ import "./chunk-ZMROW673.js";
13
13
  import "./chunk-B3SJXYIJ.js";
14
14
  import "./chunk-KYOTBZ6S.js";
15
+ import "./chunk-KPIYENTF.js";
15
16
  import "./chunk-SGEVS5SY.js";
16
17
  import "./chunk-NSTQ6QKD.js";
17
18
  import "./chunk-KGZBYWZ3.js";
18
19
  import "./chunk-BD2ICC4D.js";
19
- import "./chunk-3KETJKYA.js";
20
20
  export {
21
21
  addWorkspace,
22
22
  ensureWorkspace,
@@ -4,10 +4,10 @@ import {
4
4
  listWorkspaces,
5
5
  removeWorkspace,
6
6
  syncWorkspacesFromThreads
7
- } from "./chunk-7KWYXGIU.js";
8
- import "./chunk-4EWPKYOU.js";
9
- import "./chunk-KQBI5HNT.js";
10
- import "./chunk-C4KHDW3U.js";
7
+ } from "./chunk-K3TIQXOH.js";
8
+ import "./chunk-4OJMZ6P2.js";
9
+ import "./chunk-7WC5UWEB.js";
10
+ import "./chunk-FZCIQYNQ.js";
11
11
  import "./chunk-FKOIHGKV.js";
12
12
  import "./chunk-4NR5FL46.js";
13
13
  import "./chunk-4TR3HZFT.js";
@@ -15,7 +15,7 @@ import "./chunk-JT7R45JB.js";
15
15
  import "./chunk-A4VZXJEJ.js";
16
16
  import "./chunk-77WWLBCI.js";
17
17
  import "./chunk-QZQEXME2.js";
18
- import "./chunk-LGXBYZZA.js";
18
+ import "./chunk-DVM4ID64.js";
19
19
  export {
20
20
  addWorkspace,
21
21
  ensureWorkspace,
@@ -47,7 +47,7 @@ import {
47
47
  worktreeDisplayLabel,
48
48
  worktreeDisplayLabelForGroup,
49
49
  worktreeNameFromPath
50
- } from "./chunk-C4KHDW3U.js";
50
+ } from "./chunk-FZCIQYNQ.js";
51
51
  import "./chunk-FKOIHGKV.js";
52
52
  import "./chunk-4NR5FL46.js";
53
53
  import "./chunk-4TR3HZFT.js";
@@ -55,7 +55,7 @@ import "./chunk-JT7R45JB.js";
55
55
  import "./chunk-A4VZXJEJ.js";
56
56
  import "./chunk-77WWLBCI.js";
57
57
  import "./chunk-QZQEXME2.js";
58
- import "./chunk-LGXBYZZA.js";
58
+ import "./chunk-DVM4ID64.js";
59
59
  export {
60
60
  FAMOUS_SOCCER_TEAMS,
61
61
  allocateTeamName,
@@ -49,14 +49,14 @@ import {
49
49
  worktreeDisplayLabel,
50
50
  worktreeDisplayLabelForGroup,
51
51
  worktreeNameFromPath
52
- } from "./chunk-YXDR43ZC.js";
52
+ } from "./chunk-ZMROW673.js";
53
53
  import "./chunk-B3SJXYIJ.js";
54
54
  import "./chunk-KYOTBZ6S.js";
55
+ import "./chunk-KPIYENTF.js";
55
56
  import "./chunk-SGEVS5SY.js";
56
57
  import "./chunk-NSTQ6QKD.js";
57
58
  import "./chunk-KGZBYWZ3.js";
58
59
  import "./chunk-BD2ICC4D.js";
59
- import "./chunk-3KETJKYA.js";
60
60
  export {
61
61
  FAMOUS_SOCCER_TEAMS,
62
62
  allocateTeamName,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sideboard-ai/core",
3
- "version": "0.1.111",
3
+ "version": "0.1.116",
4
4
  "description": "Sideboard core — orchestration, agents, git worktrees, MCP server",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",