openfox 2.0.93 → 2.0.94

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 (77) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/CHANGELOG.md +13 -0
  3. package/dist/{chat-handler-MSQFJH7S.js → chat-handler-Z7OCNJWO.js} +22 -22
  4. package/dist/{chunk-IAAHDCJN.js → chunk-27SDWNKL.js} +8 -5
  5. package/dist/{chunk-GH5PL3JW.js → chunk-2BCQDYNA.js} +3 -3
  6. package/dist/{chunk-ESJNJ5B6.js → chunk-3WKAKOU4.js} +3 -3
  7. package/dist/{chunk-TQATAKVV.js → chunk-4R7G5JB6.js} +1 -1
  8. package/dist/{chunk-3NGD6IVM.js → chunk-5N5JXT7R.js} +3 -3
  9. package/dist/{chunk-BJHPUMRX.js → chunk-62X2MPO6.js} +2 -2
  10. package/dist/{chunk-FK6R2YTQ.js → chunk-DLCMSSG3.js} +17 -17
  11. package/dist/{chunk-PYJ2SRVC.js → chunk-FVV7TZC2.js} +19 -4
  12. package/dist/{chunk-6OAJNCRY.js → chunk-GLF65XDS.js} +22 -1
  13. package/dist/{chunk-GAIAJDPH.js → chunk-KNRE3DG4.js} +142 -31
  14. package/dist/{chunk-C56Z4OVW.js → chunk-KU3YUGAN.js} +2 -2
  15. package/dist/{chunk-YM267G4F.js → chunk-LSDJCJWA.js} +4 -4
  16. package/dist/{chunk-SXHGRPCI.js → chunk-MC3MCMAF.js} +4 -4
  17. package/dist/{chunk-U2RSFH6A.js → chunk-MRWR3SIT.js} +2 -2
  18. package/dist/{chunk-RJQDC2OO.js → chunk-MUNVSHL5.js} +10 -10
  19. package/dist/{chunk-WWC3R3YL.js → chunk-NLN5LPQ4.js} +2 -2
  20. package/dist/chunk-O4NHL6IN.js +7 -0
  21. package/dist/{chunk-NGN3Q26A.js → chunk-OHBY2673.js} +2 -2
  22. package/dist/{chunk-AA4PXMSI.js → chunk-OQXG4MS4.js} +210 -92
  23. package/dist/{chunk-3QQKKZMF.js → chunk-P637C6X3.js} +2 -2
  24. package/dist/{chunk-6J5IZ2NL.js → chunk-TSHJW7OC.js} +37 -6
  25. package/dist/{chunk-54Q4TGG6.js → chunk-UEOEA6BB.js} +2 -2
  26. package/dist/{chunk-NW2KP7PE.js → chunk-V4QTGYXL.js} +6 -6
  27. package/dist/{chunk-AQ4KCGXL.js → chunk-VYN37NXW.js} +3 -3
  28. package/dist/{chunk-ST4NYXLH.js → chunk-WWFH5GAR.js} +2 -2
  29. package/dist/{chunk-7YBGCZSI.js → chunk-XNB3JWAR.js} +2 -2
  30. package/dist/{chunk-U7D72C4O.js → chunk-YJ5P33SE.js} +2 -2
  31. package/dist/{chunk-DH32AHTL.js → chunk-ZASSAZ73.js} +2 -2
  32. package/dist/{chunk-NV63HYNR.js → chunk-ZYDPYFRH.js} +8 -8
  33. package/dist/cli/dev.js +1 -1
  34. package/dist/cli/index.js +1 -1
  35. package/dist/{client-RBXMHFX3.js → client-OBMJSTFN.js} +5 -5
  36. package/dist/{compactor-R7GGPBPR.js → compactor-RSEV7VYH.js} +10 -10
  37. package/dist/{dynamic-context-4UPNVL3N.js → dynamic-context-C3BWQ5GK.js} +9 -9
  38. package/dist/{events-D5AFN2CW.js → events-SY5B4VED.js} +9 -7
  39. package/dist/{folding-BO6Z6HMP.js → folding-O4OYOTPS.js} +5 -5
  40. package/dist/http-client-3MOFAPO6.js +11 -0
  41. package/dist/{inspect-proxy-NZ3VSMSC.js → inspect-proxy-GF6OI7MR.js} +4 -4
  42. package/dist/{manager-ZPQ6VSM5.js → manager-UP3XMLKX.js} +5 -5
  43. package/dist/{orchestrator-YQI2D4LW.js → orchestrator-VSUL2C7G.js} +21 -21
  44. package/dist/package.json +1 -1
  45. package/dist/{path-security-DP75YZK5.js → path-security-E55IEQHD.js} +10 -10
  46. package/dist/{platform-UKZ2QC34.js → platform-7KXP3VVA.js} +4 -4
  47. package/dist/{processor-LVQWRG6M.js → processor-WP34IB3C.js} +21 -21
  48. package/dist/{project-creator-2WMZYQME.js → project-creator-SMWFMIU5.js} +3 -3
  49. package/dist/{projects-N6KVZGMS.js → projects-M5XKC7O6.js} +3 -3
  50. package/dist/{protocol-8BzyapcK.d.ts → protocol-C5ROb3nH.d.ts} +5 -4
  51. package/dist/{protocol-4ZDERZNC.js → protocol-YDNGGADL.js} +3 -3
  52. package/dist/provider/index.d.ts +4 -4
  53. package/dist/{provider-SYYZI2KX.js → provider-E5IP7RF7.js} +6 -6
  54. package/dist/{provider-manager-P3ZSA5QS.js → provider-manager-FVIFMUTO.js} +6 -6
  55. package/dist/{registry-ERUV33AP.js → registry-XBEHPY7C.js} +4 -4
  56. package/dist/{serve-HEHWSYMX.js → serve-NZZVFNMA.js} +29 -29
  57. package/dist/server/index.d.ts +39 -3
  58. package/dist/server/index.js +28 -28
  59. package/dist/server-DYJTLAZS.js +46 -0
  60. package/dist/{session-overrides-NPVYNHTM.js → session-overrides-QWD4V5KW.js} +6 -6
  61. package/dist/{sessions-7KCM5QH4.js → sessions-BT4PION7.js} +15 -7
  62. package/dist/{settings-2OVKFWR5.js → settings-2WVGUPYV.js} +3 -3
  63. package/dist/shared/index.d.ts +3 -3
  64. package/dist/shared/index.js +1 -1
  65. package/dist/{tools-HDD7RHEG.js → tools-YXOCUUKE.js} +19 -19
  66. package/dist/{types-_OEK96iM.d.ts → types-D-dEQIrh.d.ts} +1 -1
  67. package/dist/{types-Ci7Tdpq3.d.ts → types-DHxO1nqw.d.ts} +17 -1
  68. package/dist/{update-JARYMNGH.js → update-5HWU675H.js} +2 -2
  69. package/dist/web/assets/{index-B3lfsL1_.css → index-BlV1FebL.css} +1 -1
  70. package/dist/web/assets/{index-DxTIqntH.js → index-DxAR7yc9.js} +21 -21
  71. package/dist/web/index.html +2 -2
  72. package/dist/web/sw.js +1 -1
  73. package/dist/{workspace-YLTMP3OX.js → workspace-IIRKILYL.js} +4 -4
  74. package/package.json +1 -1
  75. package/dist/chunk-LVZ6VQ3K.js +0 -7
  76. package/dist/http-client-E3CV6E5D.js +0 -11
  77. package/dist/server-AAIYC4BH.js +0 -46
package/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.0.94 - 2026-07-26
4
+
5
+ ### Features
6
+
7
+ - **WorkflowBar shows persistent workflow status** — a new bar above the chat input displays the current workflow name, active step, and an Exit button. Survives page refresh and server restarts thanks to DB-backed workflow state.
8
+
9
+ ### Bug Fixes
10
+
11
+ - **Workflow template parameters survive pause/resume** — params like `{{featureName}}` are now persisted across user-step pauses and correctly restored on continue.
12
+ - **Continue button reappears after page refresh** — the workflow waiting state is loaded from the server on session reload, so the button is always visible when a workflow is paused.
13
+ - **Launching a new workflow cancels the previous one** — if a workflow is already waiting, starting another automatically exits the old one first.
14
+ - **MCP server changes no longer bump session timestamps** — modifying MCP overrides in settings no longer pushes the session to the top of the list.
15
+
3
16
  ## 2.0.93 - 2026-07-26
4
17
 
5
18
  ### Features
package/dist/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.0.94 - 2026-07-26
4
+
5
+ ### Features
6
+
7
+ - **WorkflowBar shows persistent workflow status** — a new bar above the chat input displays the current workflow name, active step, and an Exit button. Survives page refresh and server restarts thanks to DB-backed workflow state.
8
+
9
+ ### Bug Fixes
10
+
11
+ - **Workflow template parameters survive pause/resume** — params like `{{featureName}}` are now persisted across user-step pauses and correctly restored on continue.
12
+ - **Continue button reappears after page refresh** — the workflow waiting state is loaded from the server on session reload, so the button is always visible when a workflow is paused.
13
+ - **Launching a new workflow cancels the previous one** — if a workflow is already waiting, starting another automatically exits the old one first.
14
+ - **MCP server changes no longer bump session timestamps** — modifying MCP overrides in settings no longer pushes the session to the top of the list.
15
+
3
16
  ## 2.0.93 - 2026-07-26
4
17
 
5
18
  ### Features
@@ -1,47 +1,47 @@
1
1
  import {
2
2
  runChatTurn
3
- } from "./chunk-RJQDC2OO.js";
3
+ } from "./chunk-MUNVSHL5.js";
4
4
  import {
5
5
  buildRunChatTurnParams,
6
6
  finalizeTurnCompletion,
7
7
  generateSessionNameForSession
8
- } from "./chunk-NV63HYNR.js";
9
- import "./chunk-FK6R2YTQ.js";
10
- import "./chunk-DH32AHTL.js";
11
- import "./chunk-U7D72C4O.js";
8
+ } from "./chunk-ZYDPYFRH.js";
9
+ import "./chunk-DLCMSSG3.js";
10
+ import "./chunk-ZASSAZ73.js";
11
+ import "./chunk-YJ5P33SE.js";
12
12
  import "./chunk-I72ACQ6R.js";
13
13
  import "./chunk-NWO6GRYE.js";
14
14
  import "./chunk-VKWVPQJ5.js";
15
- import "./chunk-BJHPUMRX.js";
15
+ import "./chunk-62X2MPO6.js";
16
16
  import "./chunk-J7GAZGZT.js";
17
- import "./chunk-NW2KP7PE.js";
18
- import "./chunk-SXHGRPCI.js";
19
- import "./chunk-3NGD6IVM.js";
20
- import "./chunk-AQ4KCGXL.js";
17
+ import "./chunk-V4QTGYXL.js";
18
+ import "./chunk-MC3MCMAF.js";
19
+ import "./chunk-5N5JXT7R.js";
20
+ import "./chunk-VYN37NXW.js";
21
21
  import {
22
22
  createChatMessageMessage,
23
23
  createPhaseChangedMessage,
24
24
  createSessionRunningMessage
25
- } from "./chunk-IAAHDCJN.js";
25
+ } from "./chunk-27SDWNKL.js";
26
26
  import "./chunk-EU3WWTFH.js";
27
- import "./chunk-ST4NYXLH.js";
27
+ import "./chunk-WWFH5GAR.js";
28
28
  import "./chunk-K2O7JTCX.js";
29
- import "./chunk-U2RSFH6A.js";
29
+ import "./chunk-MRWR3SIT.js";
30
30
  import {
31
31
  getEventStore
32
- } from "./chunk-PYJ2SRVC.js";
33
- import "./chunk-WWC3R3YL.js";
34
- import "./chunk-3QQKKZMF.js";
35
- import "./chunk-6J5IZ2NL.js";
36
- import "./chunk-NGN3Q26A.js";
32
+ } from "./chunk-FVV7TZC2.js";
33
+ import "./chunk-NLN5LPQ4.js";
34
+ import "./chunk-P637C6X3.js";
35
+ import "./chunk-TSHJW7OC.js";
36
+ import "./chunk-OHBY2673.js";
37
37
  import "./chunk-J2GP3J3X.js";
38
38
  import "./chunk-V4IE7HJY.js";
39
39
  import "./chunk-YHEQTVFV.js";
40
40
  import "./chunk-RMXPVQP4.js";
41
- import "./chunk-54Q4TGG6.js";
42
- import "./chunk-6OAJNCRY.js";
41
+ import "./chunk-UEOEA6BB.js";
42
+ import "./chunk-GLF65XDS.js";
43
43
  import "./chunk-K44MW7JJ.js";
44
- import "./chunk-TQATAKVV.js";
44
+ import "./chunk-4R7G5JB6.js";
45
45
  import "./chunk-OQTLFO4R.js";
46
46
  import "./chunk-CQGTEGKL.js";
47
47
  import "./chunk-5WRI5ZAA.js";
@@ -165,4 +165,4 @@ export {
165
165
  startChatSession,
166
166
  stopSessionExecution
167
167
  };
168
- //# sourceMappingURL=chat-handler-MSQFJH7S.js.map
168
+ //# sourceMappingURL=chat-handler-Z7OCNJWO.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createServerMessage,
3
3
  isClientMessage
4
- } from "./chunk-TQATAKVV.js";
4
+ } from "./chunk-4R7G5JB6.js";
5
5
 
6
6
  // src/server/ws/protocol.ts
7
7
  function enrichMessagesWithToolResults(messages) {
@@ -43,7 +43,7 @@ function serializeServerMessage(message) {
43
43
  function createErrorMessage(code, message, correlationId) {
44
44
  return createServerMessage("error", { code, message }, correlationId);
45
45
  }
46
- function createSessionStateMessage(session, messages, pendingConfirmations = [], pendingQuestions, gitStatus, correlationId, hiddenCount, waitingWorkflow) {
46
+ function createSessionStateMessage(session, messages, pendingConfirmations = [], pendingQuestions, gitStatus, correlationId, hiddenCount, activeWorkflowExecution) {
47
47
  const enrichedMessages = enrichMessagesWithToolResults(messages);
48
48
  return createServerMessage(
49
49
  "session.state",
@@ -54,7 +54,7 @@ function createSessionStateMessage(session, messages, pendingConfirmations = [],
54
54
  ...pendingQuestions ? { pendingQuestions } : {},
55
55
  ...gitStatus ? { gitStatus } : {},
56
56
  ...hiddenCount !== void 0 ? { hiddenCount } : {},
57
- ...waitingWorkflow !== void 0 ? { waitingWorkflow } : {}
57
+ ...activeWorkflowExecution !== void 0 && activeWorkflowExecution !== null ? { activeWorkflowExecution } : {}
58
58
  },
59
59
  correlationId
60
60
  );
@@ -242,8 +242,11 @@ function storedEventToServerMessage(event) {
242
242
  return createServerMessage("task.completed", data);
243
243
  }
244
244
  case "workflow.waiting": {
245
+ return null;
246
+ }
247
+ case "workflow.execution_changed": {
245
248
  const data = event.data;
246
- return createServerMessage("workflow.waiting", data);
249
+ return createServerMessage("workflow.execution_changed", data);
247
250
  }
248
251
  case "session.initialized": {
249
252
  return null;
@@ -349,4 +352,4 @@ export {
349
352
  createQueueStateMessage,
350
353
  storedEventToServerMessage
351
354
  };
352
- //# sourceMappingURL=chunk-IAAHDCJN.js.map
355
+ //# sourceMappingURL=chunk-27SDWNKL.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  createLLMClient
3
- } from "./chunk-C56Z4OVW.js";
3
+ } from "./chunk-KU3YUGAN.js";
4
4
  import {
5
5
  getModelProfile
6
6
  } from "./chunk-V4IE7HJY.js";
@@ -17,7 +17,7 @@ import {
17
17
  } from "./chunk-RMXPVQP4.js";
18
18
  import {
19
19
  proxyFetch
20
- } from "./chunk-7YBGCZSI.js";
20
+ } from "./chunk-XNB3JWAR.js";
21
21
  import {
22
22
  logger
23
23
  } from "./chunk-K44MW7JJ.js";
@@ -810,4 +810,4 @@ export {
810
810
  parseDefaultModelSelection,
811
811
  createProviderManager
812
812
  };
813
- //# sourceMappingURL=chunk-GH5PL3JW.js.map
813
+ //# sourceMappingURL=chunk-2BCQDYNA.js.map
@@ -3,10 +3,10 @@ import {
3
3
  } from "./chunk-K2O7JTCX.js";
4
4
  import {
5
5
  COMPACTION_PROMPT
6
- } from "./chunk-U2RSFH6A.js";
6
+ } from "./chunk-MRWR3SIT.js";
7
7
  import {
8
8
  getCurrentWindowMessageOptions
9
- } from "./chunk-PYJ2SRVC.js";
9
+ } from "./chunk-FVV7TZC2.js";
10
10
 
11
11
  // src/server/context/compactor.ts
12
12
  function appendCompactionPrompt(sessionId, append) {
@@ -36,4 +36,4 @@ export {
36
36
  COMPACTION_MAX_RATIO,
37
37
  shouldCompact
38
38
  };
39
- //# sourceMappingURL=chunk-ESJNJ5B6.js.map
39
+ //# sourceMappingURL=chunk-3WKAKOU4.js.map
@@ -26,4 +26,4 @@ export {
26
26
  isClientMessage,
27
27
  isServerMessage
28
28
  };
29
- //# sourceMappingURL=chunk-TQATAKVV.js.map
29
+ //# sourceMappingURL=chunk-4R7G5JB6.js.map
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  updateSessionMcpDisabledServers
3
- } from "./chunk-6J5IZ2NL.js";
3
+ } from "./chunk-TSHJW7OC.js";
4
4
  import {
5
5
  getDatabase
6
- } from "./chunk-6OAJNCRY.js";
6
+ } from "./chunk-GLF65XDS.js";
7
7
 
8
8
  // src/server/mcp/session-overrides.ts
9
9
  var sessionOverrides = /* @__PURE__ */ new Map();
@@ -62,4 +62,4 @@ export {
62
62
  clearSessionOverrides,
63
63
  getAllSessionOverrides
64
64
  };
65
- //# sourceMappingURL=chunk-3NGD6IVM.js.map
65
+ //# sourceMappingURL=chunk-5N5JXT7R.js.map
@@ -4,7 +4,7 @@ import {
4
4
  import {
5
5
  getProjectByWorkdir,
6
6
  updateProject
7
- } from "./chunk-ST4NYXLH.js";
7
+ } from "./chunk-WWFH5GAR.js";
8
8
  import {
9
9
  logger
10
10
  } from "./chunk-K44MW7JJ.js";
@@ -324,4 +324,4 @@ export {
324
324
  deleteWorkspace,
325
325
  isGitRepository
326
326
  };
327
- //# sourceMappingURL=chunk-BJHPUMRX.js.map
327
+ //# sourceMappingURL=chunk-62X2MPO6.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  startInspectProxy
3
- } from "./chunk-DH32AHTL.js";
3
+ } from "./chunk-ZASSAZ73.js";
4
4
  import {
5
5
  checkAborted,
6
6
  createProcess,
@@ -11,7 +11,7 @@ import {
11
11
  spawnShellProcess,
12
12
  startProcessCommand,
13
13
  stopProcess
14
- } from "./chunk-U7D72C4O.js";
14
+ } from "./chunk-YJ5P33SE.js";
15
15
  import {
16
16
  getMaxPerSession,
17
17
  getSessionProcessCount,
@@ -27,31 +27,31 @@ import {
27
27
  getGitBranch,
28
28
  isGitRepository,
29
29
  listWorkspaces
30
- } from "./chunk-BJHPUMRX.js";
30
+ } from "./chunk-62X2MPO6.js";
31
31
  import {
32
32
  findSkillById,
33
33
  getAllInstructions,
34
34
  getEnabledSkillMetadata,
35
35
  isSkillEnabled,
36
36
  loadAllSkills
37
- } from "./chunk-SXHGRPCI.js";
37
+ } from "./chunk-MC3MCMAF.js";
38
38
  import {
39
39
  getSessionDisabledServers
40
- } from "./chunk-3NGD6IVM.js";
40
+ } from "./chunk-5N5JXT7R.js";
41
41
  import {
42
42
  PathAccessDeniedError,
43
43
  extractAbsolutePathsFromCommand,
44
44
  extractSensitivePathsFromCommand,
45
45
  registerPathConfirmation,
46
46
  requestPathAccess
47
- } from "./chunk-AQ4KCGXL.js";
47
+ } from "./chunk-VYN37NXW.js";
48
48
  import {
49
49
  createChatDoneMessage,
50
50
  createChatMessageMessage,
51
51
  createChatMessageUpdatedMessage,
52
52
  createChatPathConfirmationMessage,
53
53
  createQueueStateMessage
54
- } from "./chunk-IAAHDCJN.js";
54
+ } from "./chunk-27SDWNKL.js";
55
55
  import {
56
56
  AskUserInterrupt,
57
57
  askUserTool
@@ -70,12 +70,12 @@ import {
70
70
  COMPACTION_PROMPT,
71
71
  buildBasePrompt,
72
72
  computeEffectiveTools
73
- } from "./chunk-U2RSFH6A.js";
73
+ } from "./chunk-MRWR3SIT.js";
74
74
  import {
75
75
  getCurrentContextWindowId,
76
76
  getCurrentWindowMessageOptions,
77
77
  getEventStore
78
- } from "./chunk-PYJ2SRVC.js";
78
+ } from "./chunk-FVV7TZC2.js";
79
79
  import {
80
80
  buildContextMessagesFromEventHistory,
81
81
  foldContextState,
@@ -85,13 +85,13 @@ import {
85
85
  handleToolResult,
86
86
  reorderToolMessages,
87
87
  stripOrphanedToolCalls
88
- } from "./chunk-3QQKKZMF.js";
88
+ } from "./chunk-P637C6X3.js";
89
89
  import {
90
90
  findAgentById,
91
91
  getRuntimeConfig,
92
92
  getSubAgents,
93
93
  loadAllAgentsDefault
94
- } from "./chunk-NGN3Q26A.js";
94
+ } from "./chunk-OHBY2673.js";
95
95
  import {
96
96
  modelSupportsVision
97
97
  } from "./chunk-V4IE7HJY.js";
@@ -109,7 +109,7 @@ import {
109
109
  import {
110
110
  SETTINGS_KEYS,
111
111
  getSetting
112
- } from "./chunk-54Q4TGG6.js";
112
+ } from "./chunk-UEOEA6BB.js";
113
113
  import {
114
114
  logger
115
115
  } from "./chunk-K44MW7JJ.js";
@@ -133,7 +133,7 @@ async function requestUserConfirmation(context, toolLabel, desc) {
133
133
  if (context.dangerLevel === "dangerous") return Promise.resolve(true);
134
134
  if (toolLabel === "workspace" || toolLabel === "command") {
135
135
  try {
136
- const { getSetting: getSetting2, SETTINGS_KEYS: SETTINGS_KEYS2 } = await import("./settings-2OVKFWR5.js");
136
+ const { getSetting: getSetting2, SETTINGS_KEYS: SETTINGS_KEYS2 } = await import("./settings-2WVGUPYV.js");
137
137
  if (getSetting2(SETTINGS_KEYS2.CONFIRM_ON_WORKSPACE_ACTIONS) !== "true") {
138
138
  return Promise.resolve(true);
139
139
  }
@@ -1913,7 +1913,7 @@ ${CONTINUE_PROMPT}` : CONTINUE_PROMPT;
1913
1913
  sessionManager.setCurrentContextSize(sessionId, result.usage.promptTokens, config.subAgentMetadata?.subAgentId);
1914
1914
  if (!compacting) {
1915
1915
  const contextState2 = sessionManager.getContextState(sessionId);
1916
- const { shouldCompact, appendCompactionPrompt } = await import("./compactor-R7GGPBPR.js");
1916
+ const { shouldCompact, appendCompactionPrompt } = await import("./compactor-RSEV7VYH.js");
1917
1917
  if (shouldCompact(
1918
1918
  contextState2.currentTokens,
1919
1919
  contextState2.maxTokens,
@@ -2852,7 +2852,7 @@ var callSubAgentTool = {
2852
2852
  };
2853
2853
  }
2854
2854
  try {
2855
- const { getToolRegistryForAgent: getToolRegistryForAgent2 } = await import("./tools-HDD7RHEG.js");
2855
+ const { getToolRegistryForAgent: getToolRegistryForAgent2 } = await import("./tools-YXOCUUKE.js");
2856
2856
  const toolRegistry = getToolRegistryForAgent2(agentDef);
2857
2857
  const turnMetrics = new TurnMetrics();
2858
2858
  const result = await executeSubAgent({
@@ -3873,7 +3873,7 @@ var mcpConfigTool = createTool(
3873
3873
  mcpNotifyChanged?.(sessionId);
3874
3874
  }
3875
3875
  async function rebuildTools() {
3876
- const { setMcpTools: setMcpTools2 } = await import("./tools-HDD7RHEG.js");
3876
+ const { setMcpTools: setMcpTools2 } = await import("./tools-YXOCUUKE.js");
3877
3877
  const mcpTools = createMcpTools(mcpManagerForTools);
3878
3878
  setMcpTools2(mcpTools);
3879
3879
  }
@@ -4519,4 +4519,4 @@ export {
4519
4519
  getToolRegistryForAgent,
4520
4520
  createToolRegistry
4521
4521
  };
4522
- //# sourceMappingURL=chunk-FK6R2YTQ.js.map
4522
+ //# sourceMappingURL=chunk-DLCMSSG3.js.map
@@ -5,13 +5,13 @@ import {
5
5
  foldContextState,
6
6
  foldSessionState,
7
7
  spreadOptionalMessageFields
8
- } from "./chunk-3QQKKZMF.js";
8
+ } from "./chunk-P637C6X3.js";
9
9
  import {
10
10
  updateSessionMessageCount
11
- } from "./chunk-6J5IZ2NL.js";
11
+ } from "./chunk-TSHJW7OC.js";
12
12
  import {
13
13
  getRuntimeConfig
14
- } from "./chunk-NGN3Q26A.js";
14
+ } from "./chunk-OHBY2673.js";
15
15
  import {
16
16
  logger
17
17
  } from "./chunk-K44MW7JJ.js";
@@ -948,6 +948,20 @@ function emitRunningChanged(sessionId, isRunning) {
948
948
  data: { isRunning }
949
949
  });
950
950
  }
951
+ function emitWorkflowExecutionChanged(sessionId, executionId, workflowId, workflowName, workflowColor, status, currentStepName) {
952
+ const eventStore = getEventStore();
953
+ eventStore.append(sessionId, {
954
+ type: "workflow.execution_changed",
955
+ data: {
956
+ executionId,
957
+ workflowId,
958
+ workflowName,
959
+ ...workflowColor ? { workflowColor } : {},
960
+ status,
961
+ ...currentStepName ? { currentStepName } : {}
962
+ }
963
+ });
964
+ }
951
965
  function emitCriteriaSet(sessionId, criteria) {
952
966
  const eventStore = getEventStore();
953
967
  eventStore.append(sessionId, {
@@ -1145,6 +1159,7 @@ export {
1145
1159
  emitModeChanged,
1146
1160
  emitPhaseChanged,
1147
1161
  emitRunningChanged,
1162
+ emitWorkflowExecutionChanged,
1148
1163
  emitCriteriaSet,
1149
1164
  emitCriterionUpdated,
1150
1165
  emitTodosUpdated,
@@ -1159,4 +1174,4 @@ export {
1159
1174
  truncateSessionMessages,
1160
1175
  getRecentUserPromptsForSession
1161
1176
  };
1162
- //# sourceMappingURL=chunk-PYJ2SRVC.js.map
1177
+ //# sourceMappingURL=chunk-FVV7TZC2.js.map
@@ -197,6 +197,27 @@ function runMigrations(db2) {
197
197
  logger.info("Migrating sessions table: adding branch column");
198
198
  db2.exec(`ALTER TABLE sessions ADD COLUMN branch TEXT`);
199
199
  }
200
+ db2.exec(`
201
+ CREATE TABLE IF NOT EXISTS workflow_executions (
202
+ id TEXT PRIMARY KEY,
203
+ session_id TEXT NOT NULL,
204
+ workflow_id TEXT NOT NULL,
205
+ workflow_name TEXT NOT NULL,
206
+ workflow_color TEXT,
207
+ status TEXT NOT NULL DEFAULT 'running',
208
+ current_step_id TEXT,
209
+ current_step_name TEXT,
210
+ step_output TEXT,
211
+ params TEXT,
212
+ created_at INTEGER NOT NULL,
213
+ updated_at INTEGER NOT NULL,
214
+ FOREIGN KEY (session_id) REFERENCES sessions(id) ON DELETE CASCADE
215
+ )
216
+ `);
217
+ db2.exec(`
218
+ CREATE INDEX IF NOT EXISTS idx_workflow_executions_session
219
+ ON workflow_executions(session_id)
220
+ `);
200
221
  logger.info("Database migrations completed");
201
222
  }
202
223
 
@@ -204,4 +225,4 @@ export {
204
225
  initDatabase,
205
226
  getDatabase
206
227
  };
207
- //# sourceMappingURL=chunk-6OAJNCRY.js.map
228
+ //# sourceMappingURL=chunk-GLF65XDS.js.map