@sideboard-ai/core 0.1.115 → 0.1.117

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 (42) hide show
  1. package/dist/agents/cursor-runner.cjs +96 -60
  2. package/dist/agents/cursor-runner.js +10 -9
  3. package/dist/{agents-3X3EFCQY.js → agents-GUEKGV7V.js} +6 -6
  4. package/dist/{agents-AHAFC6FR.js → agents-OCGAZCKT.js} +5 -5
  5. package/dist/{chunk-66XTXHR3.js → chunk-4CDCTYTM.js} +61 -11
  6. package/dist/{chunk-XOYQ7LNQ.js → chunk-4NAW5BAQ.js} +3 -3
  7. package/dist/{chunk-4OJMZ6P2.js → chunk-4WV7C7WP.js} +3 -3
  8. package/dist/{chunk-DCNR7NAL.js → chunk-5X7GRP5W.js} +49 -24
  9. package/dist/{chunk-MZ6HJ7VL.js → chunk-74YJHND6.js} +48 -23
  10. package/dist/{chunk-ZRCX43LS.js → chunk-BKVDZV7X.js} +2 -2
  11. package/dist/{chunk-A4VZXJEJ.js → chunk-HPAWHIZ3.js} +4 -1
  12. package/dist/{chunk-SLU5JVKD.js → chunk-NZBDVBCP.js} +23 -2
  13. package/dist/{chunk-KYOTBZ6S.js → chunk-RG737OWT.js} +4 -1
  14. package/dist/{chunk-K3TIQXOH.js → chunk-U3IVCVLH.js} +2 -2
  15. package/dist/{chunk-FZCIQYNQ.js → chunk-VGPLXQIH.js} +1 -1
  16. package/dist/chunk-VHX673DI.js +32 -0
  17. package/dist/{chunk-ZMROW673.js → chunk-WCU3FHEI.js} +1 -1
  18. package/dist/{chunk-7WC5UWEB.js → chunk-X3NIPGQT.js} +1 -1
  19. package/dist/{chunk-ZYEFCSZJ.js → chunk-XTZQL7OU.js} +1 -1
  20. package/dist/{chunk-C6OBY6IC.js → chunk-YJ2WV5TZ.js} +54 -10
  21. package/dist/{coordinator-prompt-4KCALEKD.js → coordinator-prompt-QMV6YEP5.js} +3 -3
  22. package/dist/{coordinator-prompt-FML4I5AR.js → coordinator-prompt-XCBHAOGE.js} +3 -3
  23. package/dist/cursor-recover-NOQYOFRF.js +76 -0
  24. package/dist/{cursor-recover-JBTIDARH.js → cursor-recover-QSLWEZNA.js} +12 -7
  25. package/dist/{global-workspace-CSWABOG5.js → global-workspace-SBKXKQFS.js} +4 -4
  26. package/dist/{global-workspace-H4YNASM6.js → global-workspace-Z37MNYU6.js} +4 -4
  27. package/dist/index.cjs +369 -240
  28. package/dist/index.d.cts +13 -1
  29. package/dist/index.d.ts +13 -1
  30. package/dist/index.js +14 -10
  31. package/dist/mcp/run-stdio.cjs +359 -237
  32. package/dist/mcp/run-stdio.js +9 -9
  33. package/dist/{orchestrator-GKLYKLRC.js → orchestrator-4PKR6AZJ.js} +7 -7
  34. package/dist/{orchestrator-TXASYNHT.js → orchestrator-MKTZYWTI.js} +8 -8
  35. package/dist/{thread-store-OEALWU7Y.js → thread-store-JR235AWK.js} +3 -1
  36. package/dist/{thread-store-LPTBVW5C.js → thread-store-PMH3BMB6.js} +3 -1
  37. package/dist/{workspaces-HJ3EVATC.js → workspaces-C3TJJFY3.js} +5 -5
  38. package/dist/{workspaces-QG6PGFQR.js → workspaces-M4OICPWF.js} +5 -5
  39. package/dist/{worktree-IW3BX26B.js → worktree-7AEKZSEX.js} +2 -2
  40. package/dist/{worktree-OTFQO2W7.js → worktree-MRSTQ32S.js} +2 -2
  41. package/package.json +1 -1
  42. package/dist/cursor-recover-ZUJG6XRQ.js +0 -42
@@ -19,29 +19,29 @@ import {
19
19
  slackApi,
20
20
  slackTokenFor,
21
21
  updateSchedule
22
- } from "../chunk-MZ6HJ7VL.js";
22
+ } from "../chunk-74YJHND6.js";
23
23
  import {
24
24
  listModelsForAgent,
25
25
  sideboardMcpProfile
26
- } from "../chunk-66XTXHR3.js";
26
+ } from "../chunk-4CDCTYTM.js";
27
27
  import "../chunk-YMRT2DU6.js";
28
- import "../chunk-ZRCX43LS.js";
28
+ import "../chunk-BKVDZV7X.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-XOYQ7LNQ.js";
35
- import "../chunk-ZYEFCSZJ.js";
34
+ } from "../chunk-4NAW5BAQ.js";
35
+ import "../chunk-XTZQL7OU.js";
36
36
  import {
37
37
  listBranches,
38
38
  listPrs,
39
39
  resolveGithubRepoSlug,
40
40
  resolveRepoRoot,
41
41
  warmGithubAgentAuth
42
- } from "../chunk-ZMROW673.js";
42
+ } from "../chunk-WCU3FHEI.js";
43
43
  import "../chunk-B3SJXYIJ.js";
44
- import "../chunk-KYOTBZ6S.js";
44
+ import "../chunk-RG737OWT.js";
45
45
  import {
46
46
  gh
47
47
  } from "../chunk-KPIYENTF.js";
@@ -1435,7 +1435,7 @@ async function startMcpServer() {
1435
1435
  }
1436
1436
  server.tool(
1437
1437
  "present_artifact",
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. 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.",
1439
1439
  {
1440
1440
  title: z4.string().describe("Short title shown in the artifact pane header"),
1441
1441
  type: z4.enum(["html", "svg", "markdown", "react"]).describe(
@@ -1512,7 +1512,7 @@ async function startMcpServer() {
1512
1512
  );
1513
1513
  server.tool(
1514
1514
  "present_schema",
1515
- "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.",
1516
1516
  {
1517
1517
  title: z4.string().describe("Pane title"),
1518
1518
  mode: z4.enum(["table", "form"]).optional().describe("table = list/filter records; form = edit one record"),
@@ -6,17 +6,17 @@ import {
6
6
  isPidAlive,
7
7
  startOrchestration,
8
8
  waitForPidExit
9
- } from "./chunk-MZ6HJ7VL.js";
10
- import "./chunk-66XTXHR3.js";
9
+ } from "./chunk-74YJHND6.js";
10
+ import "./chunk-4CDCTYTM.js";
11
11
  import "./chunk-YMRT2DU6.js";
12
- import "./chunk-ZRCX43LS.js";
12
+ import "./chunk-BKVDZV7X.js";
13
13
  import "./chunk-N5PM7HGQ.js";
14
14
  import "./chunk-KLBOWJ74.js";
15
- import "./chunk-XOYQ7LNQ.js";
16
- import "./chunk-ZYEFCSZJ.js";
17
- import "./chunk-ZMROW673.js";
15
+ import "./chunk-4NAW5BAQ.js";
16
+ import "./chunk-XTZQL7OU.js";
17
+ import "./chunk-WCU3FHEI.js";
18
18
  import "./chunk-B3SJXYIJ.js";
19
- import "./chunk-KYOTBZ6S.js";
19
+ import "./chunk-RG737OWT.js";
20
20
  import "./chunk-KPIYENTF.js";
21
21
  import "./chunk-SGEVS5SY.js";
22
22
  import "./chunk-NSTQ6QKD.js";
@@ -4,22 +4,22 @@ import {
4
4
  isPidAlive,
5
5
  startOrchestration,
6
6
  waitForPidExit
7
- } from "./chunk-DCNR7NAL.js";
8
- import "./chunk-C6OBY6IC.js";
7
+ } from "./chunk-5X7GRP5W.js";
8
+ import "./chunk-YJ2WV5TZ.js";
9
9
  import "./chunk-EKIDHL2T.js";
10
- import "./chunk-K3TIQXOH.js";
11
- import "./chunk-4OJMZ6P2.js";
12
- import "./chunk-7WC5UWEB.js";
10
+ import "./chunk-U3IVCVLH.js";
11
+ import "./chunk-4WV7C7WP.js";
12
+ import "./chunk-X3NIPGQT.js";
13
13
  import "./chunk-QTUESPAW.js";
14
14
  import "./chunk-AXQ4ZWHK.js";
15
- import "./chunk-SLU5JVKD.js";
15
+ import "./chunk-NZBDVBCP.js";
16
16
  import "./chunk-DCOZABNT.js";
17
- import "./chunk-FZCIQYNQ.js";
17
+ import "./chunk-VGPLXQIH.js";
18
18
  import "./chunk-FKOIHGKV.js";
19
19
  import "./chunk-4NR5FL46.js";
20
20
  import "./chunk-4TR3HZFT.js";
21
21
  import "./chunk-JT7R45JB.js";
22
- import "./chunk-A4VZXJEJ.js";
22
+ import "./chunk-HPAWHIZ3.js";
23
23
  import "./chunk-77WWLBCI.js";
24
24
  import "./chunk-QZQEXME2.js";
25
25
  import "./chunk-DVM4ID64.js";
@@ -3,6 +3,7 @@ import {
3
3
  createEmptyThread,
4
4
  deleteThreadRecord,
5
5
  findThreadByRef,
6
+ isThreadRecordFile,
6
7
  listThreads,
7
8
  normalizeThread,
8
9
  readThread,
@@ -11,7 +12,7 @@ import {
11
12
  updateThread,
12
13
  withThreadLock,
13
14
  writeThread
14
- } from "./chunk-A4VZXJEJ.js";
15
+ } from "./chunk-HPAWHIZ3.js";
15
16
  import "./chunk-77WWLBCI.js";
16
17
  import "./chunk-QZQEXME2.js";
17
18
  export {
@@ -19,6 +20,7 @@ export {
19
20
  createEmptyThread,
20
21
  deleteThreadRecord,
21
22
  findThreadByRef,
23
+ isThreadRecordFile,
22
24
  listThreads,
23
25
  normalizeThread,
24
26
  readThread,
@@ -5,6 +5,7 @@ import {
5
5
  createEmptyThread,
6
6
  deleteThreadRecord,
7
7
  findThreadByRef,
8
+ isThreadRecordFile,
8
9
  listThreads,
9
10
  normalizeThread,
10
11
  readThread,
@@ -13,7 +14,7 @@ import {
13
14
  updateThread,
14
15
  withThreadLock,
15
16
  writeThread
16
- } from "./chunk-KYOTBZ6S.js";
17
+ } from "./chunk-RG737OWT.js";
17
18
  import "./chunk-KGZBYWZ3.js";
18
19
  import "./chunk-BD2ICC4D.js";
19
20
  export {
@@ -21,6 +22,7 @@ export {
21
22
  createEmptyThread,
22
23
  deleteThreadRecord,
23
24
  findThreadByRef,
25
+ isThreadRecordFile,
24
26
  listThreads,
25
27
  normalizeThread,
26
28
  readThread,
@@ -6,12 +6,12 @@ import {
6
6
  listWorkspaces,
7
7
  removeWorkspace,
8
8
  syncWorkspacesFromThreads
9
- } from "./chunk-ZRCX43LS.js";
10
- import "./chunk-XOYQ7LNQ.js";
11
- import "./chunk-ZYEFCSZJ.js";
12
- import "./chunk-ZMROW673.js";
9
+ } from "./chunk-BKVDZV7X.js";
10
+ import "./chunk-4NAW5BAQ.js";
11
+ import "./chunk-XTZQL7OU.js";
12
+ import "./chunk-WCU3FHEI.js";
13
13
  import "./chunk-B3SJXYIJ.js";
14
- import "./chunk-KYOTBZ6S.js";
14
+ import "./chunk-RG737OWT.js";
15
15
  import "./chunk-KPIYENTF.js";
16
16
  import "./chunk-SGEVS5SY.js";
17
17
  import "./chunk-NSTQ6QKD.js";
@@ -4,15 +4,15 @@ import {
4
4
  listWorkspaces,
5
5
  removeWorkspace,
6
6
  syncWorkspacesFromThreads
7
- } from "./chunk-K3TIQXOH.js";
8
- import "./chunk-4OJMZ6P2.js";
9
- import "./chunk-7WC5UWEB.js";
10
- import "./chunk-FZCIQYNQ.js";
7
+ } from "./chunk-U3IVCVLH.js";
8
+ import "./chunk-4WV7C7WP.js";
9
+ import "./chunk-X3NIPGQT.js";
10
+ import "./chunk-VGPLXQIH.js";
11
11
  import "./chunk-FKOIHGKV.js";
12
12
  import "./chunk-4NR5FL46.js";
13
13
  import "./chunk-4TR3HZFT.js";
14
14
  import "./chunk-JT7R45JB.js";
15
- import "./chunk-A4VZXJEJ.js";
15
+ import "./chunk-HPAWHIZ3.js";
16
16
  import "./chunk-77WWLBCI.js";
17
17
  import "./chunk-QZQEXME2.js";
18
18
  import "./chunk-DVM4ID64.js";
@@ -47,12 +47,12 @@ import {
47
47
  worktreeDisplayLabel,
48
48
  worktreeDisplayLabelForGroup,
49
49
  worktreeNameFromPath
50
- } from "./chunk-FZCIQYNQ.js";
50
+ } from "./chunk-VGPLXQIH.js";
51
51
  import "./chunk-FKOIHGKV.js";
52
52
  import "./chunk-4NR5FL46.js";
53
53
  import "./chunk-4TR3HZFT.js";
54
54
  import "./chunk-JT7R45JB.js";
55
- import "./chunk-A4VZXJEJ.js";
55
+ import "./chunk-HPAWHIZ3.js";
56
56
  import "./chunk-77WWLBCI.js";
57
57
  import "./chunk-QZQEXME2.js";
58
58
  import "./chunk-DVM4ID64.js";
@@ -49,9 +49,9 @@ import {
49
49
  worktreeDisplayLabel,
50
50
  worktreeDisplayLabelForGroup,
51
51
  worktreeNameFromPath
52
- } from "./chunk-ZMROW673.js";
52
+ } from "./chunk-WCU3FHEI.js";
53
53
  import "./chunk-B3SJXYIJ.js";
54
- import "./chunk-KYOTBZ6S.js";
54
+ import "./chunk-RG737OWT.js";
55
55
  import "./chunk-KPIYENTF.js";
56
56
  import "./chunk-SGEVS5SY.js";
57
57
  import "./chunk-NSTQ6QKD.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sideboard-ai/core",
3
- "version": "0.1.115",
3
+ "version": "0.1.117",
4
4
  "description": "Sideboard core — orchestration, agents, git worktrees, MCP server",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -1,42 +0,0 @@
1
- import {
2
- appDataDir
3
- } from "./chunk-QZQEXME2.js";
4
-
5
- // src/agents/cursor-recover.ts
6
- import { existsSync, readFileSync } from "fs";
7
- import { join } from "path";
8
- function recoverFinishedCursorRun(opts) {
9
- const agentId = opts.agentId.trim();
10
- if (!agentId) return null;
11
- const runsPath = join(appDataDir(), "cursor-sdk-store", "runs.ndjson");
12
- if (!existsSync(runsPath)) return null;
13
- try {
14
- const lines = readFileSync(runsPath, "utf8").split("\n");
15
- let best = null;
16
- for (const line of lines) {
17
- const trimmed = line.trim();
18
- if (!trimmed) continue;
19
- let row;
20
- try {
21
- row = JSON.parse(trimmed);
22
- } catch {
23
- continue;
24
- }
25
- if (row.agentId !== agentId) continue;
26
- if (row.status !== "finished") continue;
27
- if (typeof row.result !== "string" || !row.result.trim()) continue;
28
- const endedAt = typeof row.endedAt === "number" ? row.endedAt : 0;
29
- const createdAt = typeof row.createdAt === "number" ? row.createdAt : 0;
30
- if (createdAt < opts.startedAfterMs && endedAt < opts.startedAfterMs) continue;
31
- if (!best || endedAt >= best.endedAt) {
32
- best = { runId: row.runId || "", result: row.result.trim(), endedAt };
33
- }
34
- }
35
- return best;
36
- } catch {
37
- return null;
38
- }
39
- }
40
- export {
41
- recoverFinishedCursorRun
42
- };