@sideboard-ai/core 0.1.150 → 0.1.152

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 (41) hide show
  1. package/dist/{agents-YWBQXOA2.js → agents-CUKWIM34.js} +6 -6
  2. package/dist/{agents-KKXGTEV6.js → agents-VHXCBBBD.js} +6 -6
  3. package/dist/{chunk-W6N6GQME.js → chunk-2SDMENAL.js} +1 -1
  4. package/dist/{chunk-NOTANBYC.js → chunk-2U6QF3PT.js} +7 -6
  5. package/dist/{chunk-Z2PVJKMN.js → chunk-3JBMACYX.js} +2 -2
  6. package/dist/{chunk-QGJHIJHV.js → chunk-67TIJ7S5.js} +2 -2
  7. package/dist/{chunk-NUPITVRF.js → chunk-6X7Z34XE.js} +105 -60
  8. package/dist/{chunk-DXCNW2JF.js → chunk-7BQNSUR2.js} +96 -75
  9. package/dist/{chunk-DMRIZR6M.js → chunk-7TIUOYBK.js} +7 -6
  10. package/dist/{chunk-YGGBJY5A.js → chunk-EY6QXPPO.js} +3 -3
  11. package/dist/{chunk-AF6O55PJ.js → chunk-G4MTYUWS.js} +3 -3
  12. package/dist/{chunk-ZGFYFVJF.js → chunk-GE7M3QTE.js} +2 -2
  13. package/dist/{chunk-SDN4ZYQH.js → chunk-GFQ57XAX.js} +3 -3
  14. package/dist/{chunk-WHU7YGWP.js → chunk-JRH62XC4.js} +4 -0
  15. package/dist/{chunk-HAS5EPBS.js → chunk-K2ANSHUO.js} +2 -2
  16. package/dist/{chunk-Y4NAPW5I.js → chunk-QQKDGPUI.js} +16 -13
  17. package/dist/{chunk-PTOSP4AH.js → chunk-RFMQY56R.js} +1 -1
  18. package/dist/{chunk-VO4SPEBS.js → chunk-SN6CMKF6.js} +3 -3
  19. package/dist/{chunk-VSFGPWCQ.js → chunk-SYFVUF2C.js} +16 -13
  20. package/dist/{coordinator-prompt-UCQJTFA7.js → coordinator-prompt-TBX4MOFM.js} +4 -4
  21. package/dist/{coordinator-prompt-NYR5TPBD.js → coordinator-prompt-WGFRYCHE.js} +4 -4
  22. package/dist/{global-workspace-4QHDAD2D.js → global-workspace-BHLUJ46D.js} +5 -5
  23. package/dist/{global-workspace-4SENNWBU.js → global-workspace-IY5QAV5C.js} +5 -5
  24. package/dist/index.cjs +138 -64
  25. package/dist/index.d.cts +39 -21
  26. package/dist/index.d.ts +39 -21
  27. package/dist/index.js +38 -12
  28. package/dist/mcp/run-stdio.cjs +120 -79
  29. package/dist/mcp/run-stdio.js +28 -12
  30. package/dist/{orchestrator-GZE4X3XV.js → orchestrator-256DFPSX.js} +9 -9
  31. package/dist/{orchestrator-QSBRWME5.js → orchestrator-NUA6SEV7.js} +9 -9
  32. package/dist/{plan-file-5S5TUNAW.js → plan-file-LSSSQGTQ.js} +2 -2
  33. package/dist/{plan-file-IBSU2PVW.js → plan-file-OZEBFSGQ.js} +2 -2
  34. package/dist/{workspaces-RDUSB6FD.js → workspaces-4FSXVIZM.js} +6 -6
  35. package/dist/{workspaces-7S7QKCUE.js → workspaces-NECIQTAO.js} +6 -6
  36. package/dist/{worktree-63AGPPLO.js → worktree-DPIREDFR.js} +3 -3
  37. package/dist/{worktree-JIZ3QMZX.js → worktree-HTUM35NT.js} +3 -3
  38. package/dist/{worktree-exclude-6MQWGWV5.js → worktree-exclude-N5X5I422.js} +3 -1
  39. package/dist/{worktree-exclude-TV6EV6BS.js → worktree-exclude-X54WSOXM.js} +3 -1
  40. package/package.json +1 -1
  41. /package/dist/{chunk-Y7YBWWIG.js → chunk-NVXVEGGM.js} +0 -0
@@ -32,19 +32,19 @@ import {
32
32
  slackTokenFor,
33
33
  syncBoardPins,
34
34
  updateSchedule
35
- } from "../chunk-DXCNW2JF.js";
35
+ } from "../chunk-7BQNSUR2.js";
36
36
  import {
37
37
  isInternalAgentStatusText,
38
38
  listModelsForAgent,
39
39
  sideboardMcpProfile
40
- } from "../chunk-YGGBJY5A.js";
40
+ } from "../chunk-EY6QXPPO.js";
41
41
  import "../chunk-G7SIQFBQ.js";
42
42
  import "../chunk-S42XV45P.js";
43
- import "../chunk-QGJHIJHV.js";
43
+ import "../chunk-67TIJ7S5.js";
44
44
  import {
45
45
  GLOBAL_WORKSPACE_ID,
46
46
  isCloudCoordinatorThread
47
- } from "../chunk-VO4SPEBS.js";
47
+ } from "../chunk-SN6CMKF6.js";
48
48
  import {
49
49
  createAbleTimeTask,
50
50
  ensureAbleTimeTask,
@@ -59,9 +59,9 @@ import {
59
59
  import {
60
60
  httpFetch
61
61
  } from "../chunk-6GN5WPYZ.js";
62
- import "../chunk-W6N6GQME.js";
62
+ import "../chunk-2SDMENAL.js";
63
63
  import "../chunk-KLBOWJ74.js";
64
- import "../chunk-DMRIZR6M.js";
64
+ import "../chunk-7TIUOYBK.js";
65
65
  import {
66
66
  canonicalizeRepoPath,
67
67
  formatGhLandError,
@@ -70,10 +70,10 @@ import {
70
70
  resolveGithubRepoSlug,
71
71
  resolveRepoRoot,
72
72
  warmGithubAgentAuth
73
- } from "../chunk-Z2PVJKMN.js";
74
- import "../chunk-Y7YBWWIG.js";
73
+ } from "../chunk-3JBMACYX.js";
74
+ import "../chunk-NVXVEGGM.js";
75
75
  import "../chunk-EUXOHTUK.js";
76
- import "../chunk-VSFGPWCQ.js";
76
+ import "../chunk-SYFVUF2C.js";
77
77
  import {
78
78
  gh
79
79
  } from "../chunk-FNQNJOHY.js";
@@ -2376,7 +2376,7 @@ async function startMcpServer() {
2376
2376
  thread_id: z5.string().optional().describe("Sideboard thread id when cwd is not the worktree")
2377
2377
  },
2378
2378
  async ({ title, content, thread_id }) => {
2379
- const { writePlanFile } = await import("../plan-file-IBSU2PVW.js");
2379
+ const { writePlanFile } = await import("../plan-file-OZEBFSGQ.js");
2380
2380
  let root = process.cwd();
2381
2381
  if (thread_id?.trim()) {
2382
2382
  const t = orch.getThread(thread_id.trim());
@@ -2819,9 +2819,25 @@ async function startMcpServer() {
2819
2819
  };
2820
2820
  }
2821
2821
  );
2822
+ server.tool(
2823
+ "get_pr_checks",
2824
+ "Snapshot of GitHub PR checks for a worktree thread (`gh pr checks` plus merge/review gates). null = no PR. If the user gave a goal (Greptile 5/5, CI green), the worktree agent watches with `gh pr checks --watch` via /long-running \u2014 this tool is a snapshot, not a waiter. Coordinators: do not run gh from the orchestration cwd.",
2825
+ { ref: z5.string().describe("Worktree thread id/ref") },
2826
+ async ({ ref }) => {
2827
+ try {
2828
+ const checks = await orch.getPrChecks(ref);
2829
+ return {
2830
+ content: [{ type: "text", text: JSON.stringify(checks) }]
2831
+ };
2832
+ } catch (err) {
2833
+ const message = err instanceof Error ? err.message : String(err);
2834
+ return { content: [{ type: "text", text: message }], isError: true };
2835
+ }
2836
+ }
2837
+ );
2822
2838
  server.tool(
2823
2839
  "request_review",
2824
- 'Start a merge-readiness Review on a worktree agent thread (same as the desktop Review button). Opens a new Review chat tab, attaches .claude/skills/review/SKILL.md when present (else seeds that skill from .sideboard/review.md or the stock template), and sends "Review changes in this workspace." Expect Approve / Approve with nits / Request changes / Needs more information. Pass a worktree thread ref \u2014 not the orchestrator. Then wait_for_turn (loop while stillRunning) / get_turn_result on the returned review tab id.',
2840
+ 'Start a merge-readiness Review on a worktree agent thread (same as the desktop Review button). Opens a new Review chat tab, attaches .claude/skills/review/SKILL.md when present (else copies .sideboard/review.md into .context/review.md, or seeds that file from the stock template), and sends "Review changes in this workspace." Expect Approve / Approve with nits / Request changes / Needs more information. Pass a worktree thread ref \u2014 not the orchestrator. Then wait_for_turn (loop while stillRunning) / get_turn_result on the returned review tab id.',
2825
2841
  { ref: z5.string().describe("Worktree thread id/ref to review") },
2826
2842
  async ({ ref }) => {
2827
2843
  try {
@@ -2849,7 +2865,7 @@ async function startMcpServer() {
2849
2865
  );
2850
2866
  server.tool(
2851
2867
  "ask_git",
2852
- "Commit & push, open a draft PR, resolve conflicts, or merge \u2014 same actions as the desktop git buttons. When the worktree is clean, Sideboard pushes / opens the PR itself (HTTPS via `gh` even when origin is SSH / Settings \u2192 Git is SSH). When dirty, queues the worktree agent to commit; then wait_for_turn (loop while stillRunning). Pass a worktree thread ref (not the orchestrator). action=merge only when the user explicitly asked to merge that PR. Do not run git or gh from the orchestration cwd. If this tool errors that the GraphQL/PR body is too long, the branch is already pushed \u2014 have the worktree agent retry `gh pr create --body-file` with a short description (GitHub limit 65,536 characters). Do not invent SSH/auth failures from that error.",
2868
+ "Commit & push, open a draft PR, resolve conflicts, or merge \u2014 same actions as the desktop git buttons. When the worktree is clean, Sideboard pushes / opens the PR itself (HTTPS via `gh` even when origin is SSH / Settings \u2192 Git is SSH). When dirty, queues the worktree agent to commit; then wait_for_turn (loop while stillRunning). Do not start a checks loop on a plain push \u2014 only if the user gave a goal (Greptile 5/5, CI green). Pass a worktree thread ref (not the orchestrator). action=merge only when the user explicitly asked to merge that PR. Do not run git or gh from the orchestration cwd. If this tool errors that the GraphQL/PR body is too long, the branch is already pushed \u2014 have the worktree agent retry `gh pr create --body-file` with a short description (GitHub limit 65,536 characters). Do not invent SSH/auth failures from that error.",
2853
2869
  {
2854
2870
  ref: z5.string().describe("Worktree thread id/ref"),
2855
2871
  action: z5.enum(AGENT_GIT_ACTIONS).describe(
@@ -7,20 +7,20 @@ import {
7
7
  isPidAlive,
8
8
  startOrchestration,
9
9
  waitForPidExit
10
- } from "./chunk-DXCNW2JF.js";
11
- import "./chunk-YGGBJY5A.js";
10
+ } from "./chunk-7BQNSUR2.js";
11
+ import "./chunk-EY6QXPPO.js";
12
12
  import "./chunk-G7SIQFBQ.js";
13
13
  import "./chunk-S42XV45P.js";
14
- import "./chunk-QGJHIJHV.js";
15
- import "./chunk-VO4SPEBS.js";
14
+ import "./chunk-67TIJ7S5.js";
15
+ import "./chunk-SN6CMKF6.js";
16
16
  import "./chunk-6GN5WPYZ.js";
17
- import "./chunk-W6N6GQME.js";
17
+ import "./chunk-2SDMENAL.js";
18
18
  import "./chunk-KLBOWJ74.js";
19
- import "./chunk-DMRIZR6M.js";
20
- import "./chunk-Z2PVJKMN.js";
21
- import "./chunk-Y7YBWWIG.js";
19
+ import "./chunk-7TIUOYBK.js";
20
+ import "./chunk-3JBMACYX.js";
21
+ import "./chunk-NVXVEGGM.js";
22
22
  import "./chunk-EUXOHTUK.js";
23
- import "./chunk-VSFGPWCQ.js";
23
+ import "./chunk-SYFVUF2C.js";
24
24
  import "./chunk-FNQNJOHY.js";
25
25
  import "./chunk-CZD4NRDZ.js";
26
26
  import "./chunk-NSTQ6QKD.js";
@@ -5,16 +5,16 @@ import {
5
5
  isPidAlive,
6
6
  startOrchestration,
7
7
  waitForPidExit
8
- } from "./chunk-NUPITVRF.js";
9
- import "./chunk-PTOSP4AH.js";
10
- import "./chunk-SDN4ZYQH.js";
8
+ } from "./chunk-6X7Z34XE.js";
9
+ import "./chunk-RFMQY56R.js";
10
+ import "./chunk-GFQ57XAX.js";
11
11
  import "./chunk-7F4XE6UG.js";
12
12
  import "./chunk-M267JPEA.js";
13
- import "./chunk-HAS5EPBS.js";
14
- import "./chunk-AF6O55PJ.js";
15
- import "./chunk-NOTANBYC.js";
16
- import "./chunk-ZGFYFVJF.js";
17
- import "./chunk-WHU7YGWP.js";
13
+ import "./chunk-K2ANSHUO.js";
14
+ import "./chunk-G4MTYUWS.js";
15
+ import "./chunk-2U6QF3PT.js";
16
+ import "./chunk-GE7M3QTE.js";
17
+ import "./chunk-JRH62XC4.js";
18
18
  import "./chunk-ELBYOGVA.js";
19
19
  import "./chunk-AXQ4ZWHK.js";
20
20
  import "./chunk-HEII7W3Q.js";
@@ -25,7 +25,7 @@ import "./chunk-JT7R45JB.js";
25
25
  import "./chunk-TUGKX5BD.js";
26
26
  import "./chunk-77WWLBCI.js";
27
27
  import "./chunk-QZQEXME2.js";
28
- import "./chunk-Y4NAPW5I.js";
28
+ import "./chunk-QQKDGPUI.js";
29
29
  import "./chunk-UFHNSFAS.js";
30
30
  export {
31
31
  LIVE_TURN_SPAWN_GRACE_MS,
@@ -8,8 +8,8 @@ import {
8
8
  readPlanFile,
9
9
  resolvePlanMarkdown,
10
10
  writePlanFile
11
- } from "./chunk-PTOSP4AH.js";
12
- import "./chunk-WHU7YGWP.js";
11
+ } from "./chunk-RFMQY56R.js";
12
+ import "./chunk-JRH62XC4.js";
13
13
  export {
14
14
  LEGACY_PLAN_FILE_REL,
15
15
  PLAN_FILE_NAME,
@@ -10,8 +10,8 @@ import {
10
10
  readPlanFile,
11
11
  resolvePlanMarkdown,
12
12
  writePlanFile
13
- } from "./chunk-W6N6GQME.js";
14
- import "./chunk-Y7YBWWIG.js";
13
+ } from "./chunk-2SDMENAL.js";
14
+ import "./chunk-NVXVEGGM.js";
15
15
  export {
16
16
  LEGACY_PLAN_FILE_REL,
17
17
  PLAN_FILE_NAME,
@@ -4,18 +4,18 @@ import {
4
4
  listWorkspaces,
5
5
  removeWorkspace,
6
6
  syncWorkspacesFromThreads
7
- } from "./chunk-HAS5EPBS.js";
8
- import "./chunk-AF6O55PJ.js";
9
- import "./chunk-NOTANBYC.js";
10
- import "./chunk-ZGFYFVJF.js";
11
- import "./chunk-WHU7YGWP.js";
7
+ } from "./chunk-K2ANSHUO.js";
8
+ import "./chunk-G4MTYUWS.js";
9
+ import "./chunk-2U6QF3PT.js";
10
+ import "./chunk-GE7M3QTE.js";
11
+ import "./chunk-JRH62XC4.js";
12
12
  import "./chunk-4XNSGDXE.js";
13
13
  import "./chunk-4TR3HZFT.js";
14
14
  import "./chunk-JT7R45JB.js";
15
15
  import "./chunk-TUGKX5BD.js";
16
16
  import "./chunk-77WWLBCI.js";
17
17
  import "./chunk-QZQEXME2.js";
18
- import "./chunk-Y4NAPW5I.js";
18
+ import "./chunk-QQKDGPUI.js";
19
19
  import "./chunk-UFHNSFAS.js";
20
20
  export {
21
21
  addWorkspace,
@@ -6,13 +6,13 @@ import {
6
6
  listWorkspaces,
7
7
  removeWorkspace,
8
8
  syncWorkspacesFromThreads
9
- } from "./chunk-QGJHIJHV.js";
10
- import "./chunk-VO4SPEBS.js";
11
- import "./chunk-DMRIZR6M.js";
12
- import "./chunk-Z2PVJKMN.js";
13
- import "./chunk-Y7YBWWIG.js";
9
+ } from "./chunk-67TIJ7S5.js";
10
+ import "./chunk-SN6CMKF6.js";
11
+ import "./chunk-7TIUOYBK.js";
12
+ import "./chunk-3JBMACYX.js";
13
+ import "./chunk-NVXVEGGM.js";
14
14
  import "./chunk-EUXOHTUK.js";
15
- import "./chunk-VSFGPWCQ.js";
15
+ import "./chunk-SYFVUF2C.js";
16
16
  import "./chunk-FNQNJOHY.js";
17
17
  import "./chunk-CZD4NRDZ.js";
18
18
  import "./chunk-NSTQ6QKD.js";
@@ -53,15 +53,15 @@ import {
53
53
  worktreeDisplayLabel,
54
54
  worktreeDisplayLabelForGroup,
55
55
  worktreeNameFromPath
56
- } from "./chunk-ZGFYFVJF.js";
57
- import "./chunk-WHU7YGWP.js";
56
+ } from "./chunk-GE7M3QTE.js";
57
+ import "./chunk-JRH62XC4.js";
58
58
  import "./chunk-4XNSGDXE.js";
59
59
  import "./chunk-4TR3HZFT.js";
60
60
  import "./chunk-JT7R45JB.js";
61
61
  import "./chunk-TUGKX5BD.js";
62
62
  import "./chunk-77WWLBCI.js";
63
63
  import "./chunk-QZQEXME2.js";
64
- import "./chunk-Y4NAPW5I.js";
64
+ import "./chunk-QQKDGPUI.js";
65
65
  import "./chunk-UFHNSFAS.js";
66
66
  export {
67
67
  FAMOUS_SOCCER_TEAMS,
@@ -55,10 +55,10 @@ import {
55
55
  worktreeDisplayLabel,
56
56
  worktreeDisplayLabelForGroup,
57
57
  worktreeNameFromPath
58
- } from "./chunk-Z2PVJKMN.js";
59
- import "./chunk-Y7YBWWIG.js";
58
+ } from "./chunk-3JBMACYX.js";
59
+ import "./chunk-NVXVEGGM.js";
60
60
  import "./chunk-EUXOHTUK.js";
61
- import "./chunk-VSFGPWCQ.js";
61
+ import "./chunk-SYFVUF2C.js";
62
62
  import "./chunk-FNQNJOHY.js";
63
63
  import "./chunk-CZD4NRDZ.js";
64
64
  import "./chunk-NSTQ6QKD.js";
@@ -1,11 +1,13 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  import {
4
+ WORKTREE_CONTEXT_EXCLUDE,
4
5
  WORKTREE_SIDEBOARD_EXCLUDE,
5
6
  ensureWorktreeSideboardIgnored
6
- } from "./chunk-VSFGPWCQ.js";
7
+ } from "./chunk-SYFVUF2C.js";
7
8
  import "./chunk-FNQNJOHY.js";
8
9
  export {
10
+ WORKTREE_CONTEXT_EXCLUDE,
9
11
  WORKTREE_SIDEBOARD_EXCLUDE,
10
12
  ensureWorktreeSideboardIgnored
11
13
  };
@@ -1,9 +1,11 @@
1
1
  import {
2
+ WORKTREE_CONTEXT_EXCLUDE,
2
3
  WORKTREE_SIDEBOARD_EXCLUDE,
3
4
  ensureWorktreeSideboardIgnored
4
- } from "./chunk-Y4NAPW5I.js";
5
+ } from "./chunk-QQKDGPUI.js";
5
6
  import "./chunk-UFHNSFAS.js";
6
7
  export {
8
+ WORKTREE_CONTEXT_EXCLUDE,
7
9
  WORKTREE_SIDEBOARD_EXCLUDE,
8
10
  ensureWorktreeSideboardIgnored
9
11
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sideboard-ai/core",
3
- "version": "0.1.150",
3
+ "version": "0.1.152",
4
4
  "description": "Sideboard core — orchestration, agents, git worktrees, MCP server",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
File without changes