dmux 5.3.0 → 5.5.0

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 (244) hide show
  1. package/README.md +2 -1
  2. package/dist/DmuxApp.d.ts.map +1 -1
  3. package/dist/DmuxApp.js +226 -51
  4. package/dist/DmuxApp.js.map +1 -1
  5. package/dist/FileBrowserApp.d.ts +4 -0
  6. package/dist/FileBrowserApp.d.ts.map +1 -0
  7. package/dist/FileBrowserApp.js +693 -0
  8. package/dist/FileBrowserApp.js.map +1 -0
  9. package/dist/actions/implementations/closeAction.d.ts.map +1 -1
  10. package/dist/actions/implementations/closeAction.js +47 -5
  11. package/dist/actions/implementations/closeAction.js.map +1 -1
  12. package/dist/actions/implementations/mergeAction.d.ts.map +1 -1
  13. package/dist/actions/implementations/mergeAction.js +51 -16
  14. package/dist/actions/implementations/mergeAction.js.map +1 -1
  15. package/dist/actions/implementations/viewAction.d.ts.map +1 -1
  16. package/dist/actions/implementations/viewAction.js +7 -0
  17. package/dist/actions/implementations/viewAction.js.map +1 -1
  18. package/dist/actions/index.d.ts.map +1 -1
  19. package/dist/actions/index.js +24 -0
  20. package/dist/actions/index.js.map +1 -1
  21. package/dist/actions/merge/multiMergeOrchestrator.js +1 -1
  22. package/dist/actions/merge/multiMergeOrchestrator.js.map +1 -1
  23. package/dist/actions/types.d.ts +19 -4
  24. package/dist/actions/types.d.ts.map +1 -1
  25. package/dist/actions/types.js +91 -0
  26. package/dist/actions/types.js.map +1 -1
  27. package/dist/components/indicators/Spinner.d.ts +2 -0
  28. package/dist/components/indicators/Spinner.d.ts.map +1 -1
  29. package/dist/components/indicators/Spinner.js +4 -4
  30. package/dist/components/indicators/Spinner.js.map +1 -1
  31. package/dist/components/panes/KebabMenu.d.ts +2 -2
  32. package/dist/components/panes/KebabMenu.d.ts.map +1 -1
  33. package/dist/components/panes/KebabMenu.js +9 -4
  34. package/dist/components/panes/KebabMenu.js.map +1 -1
  35. package/dist/components/panes/PaneCard.d.ts.map +1 -1
  36. package/dist/components/panes/PaneCard.js +20 -4
  37. package/dist/components/panes/PaneCard.js.map +1 -1
  38. package/dist/components/panes/PanesGrid.d.ts +1 -0
  39. package/dist/components/panes/PanesGrid.d.ts.map +1 -1
  40. package/dist/components/panes/PanesGrid.js +11 -3
  41. package/dist/components/panes/PanesGrid.js.map +1 -1
  42. package/dist/components/popups/agentChoicePopup.js +29 -24
  43. package/dist/components/popups/agentChoicePopup.js.map +1 -1
  44. package/dist/components/popups/agentChoiceSelection.d.ts +8 -0
  45. package/dist/components/popups/agentChoiceSelection.d.ts.map +1 -0
  46. package/dist/components/popups/agentChoiceSelection.js +14 -0
  47. package/dist/components/popups/agentChoiceSelection.js.map +1 -0
  48. package/dist/components/popups/kebabMenuPopup.js +9 -4
  49. package/dist/components/popups/kebabMenuPopup.js.map +1 -1
  50. package/dist/components/popups/notificationSoundsPopup.d.ts +25 -0
  51. package/dist/components/popups/notificationSoundsPopup.d.ts.map +1 -0
  52. package/dist/components/popups/notificationSoundsPopup.js +165 -0
  53. package/dist/components/popups/notificationSoundsPopup.js.map +1 -0
  54. package/dist/components/popups/settingsPopup.js +361 -26
  55. package/dist/components/popups/settingsPopup.js.map +1 -1
  56. package/dist/components/popups/shortcutsPopup.js +11 -5
  57. package/dist/components/popups/shortcutsPopup.js.map +1 -1
  58. package/dist/constants/layout.d.ts +9 -0
  59. package/dist/constants/layout.d.ts.map +1 -0
  60. package/dist/constants/layout.js +9 -0
  61. package/dist/constants/layout.js.map +1 -0
  62. package/dist/hooks/useActionSystem.d.ts +9 -5
  63. package/dist/hooks/useActionSystem.d.ts.map +1 -1
  64. package/dist/hooks/useActionSystem.js +21 -19
  65. package/dist/hooks/useActionSystem.js.map +1 -1
  66. package/dist/hooks/useInputHandling.d.ts +1 -0
  67. package/dist/hooks/useInputHandling.d.ts.map +1 -1
  68. package/dist/hooks/useInputHandling.js +499 -79
  69. package/dist/hooks/useInputHandling.js.map +1 -1
  70. package/dist/hooks/usePaneCreation.d.ts +4 -2
  71. package/dist/hooks/usePaneCreation.d.ts.map +1 -1
  72. package/dist/hooks/usePaneCreation.js +6 -0
  73. package/dist/hooks/usePaneCreation.js.map +1 -1
  74. package/dist/hooks/usePaneLoading.d.ts +1 -0
  75. package/dist/hooks/usePaneLoading.d.ts.map +1 -1
  76. package/dist/hooks/usePaneLoading.js +10 -7
  77. package/dist/hooks/usePaneLoading.js.map +1 -1
  78. package/dist/hooks/usePaneSync.js +2 -2
  79. package/dist/hooks/usePaneSync.js.map +1 -1
  80. package/dist/hooks/usePanes.d.ts.map +1 -1
  81. package/dist/hooks/usePanes.js +18 -4
  82. package/dist/hooks/usePanes.js.map +1 -1
  83. package/dist/hooks/useProjectActivity.d.ts +7 -0
  84. package/dist/hooks/useProjectActivity.d.ts.map +1 -0
  85. package/dist/hooks/useProjectActivity.js +79 -0
  86. package/dist/hooks/useProjectActivity.js.map +1 -0
  87. package/dist/hooks/useServices.d.ts +3 -0
  88. package/dist/hooks/useServices.d.ts.map +1 -1
  89. package/dist/hooks/useServices.js +4 -0
  90. package/dist/hooks/useServices.js.map +1 -1
  91. package/dist/index.js +59 -15
  92. package/dist/index.js.map +1 -1
  93. package/dist/layout/LayoutCalculator.d.ts.map +1 -1
  94. package/dist/layout/LayoutCalculator.js +4 -1
  95. package/dist/layout/LayoutCalculator.js.map +1 -1
  96. package/dist/services/DmuxAttentionService.d.ts +33 -0
  97. package/dist/services/DmuxAttentionService.d.ts.map +1 -0
  98. package/dist/services/DmuxAttentionService.js +172 -0
  99. package/dist/services/DmuxAttentionService.js.map +1 -0
  100. package/dist/services/DmuxFocusService.d.ts +58 -0
  101. package/dist/services/DmuxFocusService.d.ts.map +1 -0
  102. package/dist/services/DmuxFocusService.js +671 -0
  103. package/dist/services/DmuxFocusService.js.map +1 -0
  104. package/dist/services/PaneAnalyzer.d.ts +11 -2
  105. package/dist/services/PaneAnalyzer.d.ts.map +1 -1
  106. package/dist/services/PaneAnalyzer.js +88 -22
  107. package/dist/services/PaneAnalyzer.js.map +1 -1
  108. package/dist/services/PopupManager.d.ts +31 -14
  109. package/dist/services/PopupManager.d.ts.map +1 -1
  110. package/dist/services/PopupManager.js +147 -68
  111. package/dist/services/PopupManager.js.map +1 -1
  112. package/dist/services/StatusDetector.d.ts +14 -0
  113. package/dist/services/StatusDetector.d.ts.map +1 -1
  114. package/dist/services/StatusDetector.js +60 -12
  115. package/dist/services/StatusDetector.js.map +1 -1
  116. package/dist/services/TmuxHookManager.d.ts.map +1 -1
  117. package/dist/services/TmuxHookManager.js +4 -2
  118. package/dist/services/TmuxHookManager.js.map +1 -1
  119. package/dist/services/TmuxService.d.ts +37 -2
  120. package/dist/services/TmuxService.d.ts.map +1 -1
  121. package/dist/services/TmuxService.js +138 -16
  122. package/dist/services/TmuxService.js.map +1 -1
  123. package/dist/types/activity.d.ts +4 -0
  124. package/dist/types/activity.d.ts.map +1 -0
  125. package/dist/types/activity.js +2 -0
  126. package/dist/types/activity.js.map +1 -0
  127. package/dist/types.d.ts +18 -1
  128. package/dist/types.d.ts.map +1 -1
  129. package/dist/utils/attachAgent.d.ts +4 -0
  130. package/dist/utils/attachAgent.d.ts.map +1 -1
  131. package/dist/utils/attachAgent.js +18 -7
  132. package/dist/utils/attachAgent.js.map +1 -1
  133. package/dist/utils/controlPaneRecovery.d.ts +2 -0
  134. package/dist/utils/controlPaneRecovery.d.ts.map +1 -0
  135. package/dist/utils/controlPaneRecovery.js +156 -0
  136. package/dist/utils/controlPaneRecovery.js.map +1 -0
  137. package/dist/utils/devWatchExit.d.ts +2 -0
  138. package/dist/utils/devWatchExit.d.ts.map +1 -0
  139. package/dist/utils/devWatchExit.js +10 -0
  140. package/dist/utils/devWatchExit.js.map +1 -0
  141. package/dist/utils/dmuxCommand.d.ts +3 -0
  142. package/dist/utils/dmuxCommand.d.ts.map +1 -0
  143. package/dist/utils/dmuxCommand.js +18 -0
  144. package/dist/utils/dmuxCommand.js.map +1 -0
  145. package/dist/utils/fileBrowser.d.ts +61 -0
  146. package/dist/utils/fileBrowser.d.ts.map +1 -0
  147. package/dist/utils/fileBrowser.js +567 -0
  148. package/dist/utils/fileBrowser.js.map +1 -0
  149. package/dist/utils/focusDetection.d.ts +38 -0
  150. package/dist/utils/focusDetection.d.ts.map +1 -0
  151. package/dist/utils/focusDetection.js +57 -0
  152. package/dist/utils/focusDetection.js.map +1 -0
  153. package/dist/utils/generated-agents-doc.d.ts +1 -1
  154. package/dist/utils/generated-agents-doc.js +1 -1
  155. package/dist/utils/git.d.ts +4 -0
  156. package/dist/utils/git.d.ts.map +1 -1
  157. package/dist/utils/git.js +15 -0
  158. package/dist/utils/git.js.map +1 -1
  159. package/dist/utils/layoutManager.d.ts +5 -1
  160. package/dist/utils/layoutManager.d.ts.map +1 -1
  161. package/dist/utils/layoutManager.js +103 -26
  162. package/dist/utils/layoutManager.js.map +1 -1
  163. package/dist/utils/mergeTargets.d.ts +17 -0
  164. package/dist/utils/mergeTargets.d.ts.map +1 -0
  165. package/dist/utils/mergeTargets.js +132 -0
  166. package/dist/utils/mergeTargets.js.map +1 -0
  167. package/dist/utils/mergeValidation.d.ts.map +1 -1
  168. package/dist/utils/mergeValidation.js +12 -5
  169. package/dist/utils/mergeValidation.js.map +1 -1
  170. package/dist/utils/notificationSoundPreview.d.ts +10 -0
  171. package/dist/utils/notificationSoundPreview.d.ts.map +1 -0
  172. package/dist/utils/notificationSoundPreview.js +54 -0
  173. package/dist/utils/notificationSoundPreview.js.map +1 -0
  174. package/dist/utils/notificationSounds.d.ts +17 -0
  175. package/dist/utils/notificationSounds.d.ts.map +1 -0
  176. package/dist/utils/notificationSounds.js +123 -0
  177. package/dist/utils/notificationSounds.js.map +1 -0
  178. package/dist/utils/paneAttentionHeuristics.d.ts +4 -0
  179. package/dist/utils/paneAttentionHeuristics.d.ts.map +1 -0
  180. package/dist/utils/paneAttentionHeuristics.js +135 -0
  181. package/dist/utils/paneAttentionHeuristics.js.map +1 -0
  182. package/dist/utils/paneCreation.d.ts +3 -1
  183. package/dist/utils/paneCreation.d.ts.map +1 -1
  184. package/dist/utils/paneCreation.js +23 -5
  185. package/dist/utils/paneCreation.js.map +1 -1
  186. package/dist/utils/paneVisibility.d.ts +12 -0
  187. package/dist/utils/paneVisibility.d.ts.map +1 -0
  188. package/dist/utils/paneVisibility.js +60 -0
  189. package/dist/utils/paneVisibility.js.map +1 -0
  190. package/dist/utils/processShutdown.d.ts +4 -0
  191. package/dist/utils/processShutdown.d.ts.map +1 -0
  192. package/dist/utils/processShutdown.js +27 -0
  193. package/dist/utils/processShutdown.js.map +1 -0
  194. package/dist/utils/promptStore.d.ts.map +1 -1
  195. package/dist/utils/promptStore.js +6 -0
  196. package/dist/utils/promptStore.js.map +1 -1
  197. package/dist/utils/reopenWorktree.d.ts.map +1 -1
  198. package/dist/utils/reopenWorktree.js +8 -0
  199. package/dist/utils/reopenWorktree.js.map +1 -1
  200. package/dist/utils/runtimePaths.d.ts +1 -0
  201. package/dist/utils/runtimePaths.d.ts.map +1 -1
  202. package/dist/utils/runtimePaths.js +3 -0
  203. package/dist/utils/runtimePaths.js.map +1 -1
  204. package/dist/utils/settingsManager.d.ts +3 -0
  205. package/dist/utils/settingsManager.d.ts.map +1 -1
  206. package/dist/utils/settingsManager.js +203 -11
  207. package/dist/utils/settingsManager.js.map +1 -1
  208. package/dist/utils/tmux.d.ts +5 -1
  209. package/dist/utils/tmux.d.ts.map +1 -1
  210. package/dist/utils/tmux.js +23 -5
  211. package/dist/utils/tmux.js.map +1 -1
  212. package/dist/utils/tmuxConfigOnboarding.js +1 -1
  213. package/dist/utils/tmuxConfigOnboarding.js.map +1 -1
  214. package/dist/utils/tmuxHookCommands.d.ts +14 -0
  215. package/dist/utils/tmuxHookCommands.d.ts.map +1 -0
  216. package/dist/utils/tmuxHookCommands.js +30 -0
  217. package/dist/utils/tmuxHookCommands.js.map +1 -0
  218. package/dist/utils/tmuxRuntimeCompatibility.d.ts +11 -0
  219. package/dist/utils/tmuxRuntimeCompatibility.d.ts.map +1 -0
  220. package/dist/utils/tmuxRuntimeCompatibility.js +71 -0
  221. package/dist/utils/tmuxRuntimeCompatibility.js.map +1 -0
  222. package/dist/utils/worktreeMetadata.d.ts +9 -0
  223. package/dist/utils/worktreeMetadata.d.ts.map +1 -0
  224. package/dist/utils/worktreeMetadata.js +60 -0
  225. package/dist/utils/worktreeMetadata.js.map +1 -0
  226. package/dist/workers/PaneWorker.js +64 -128
  227. package/dist/workers/PaneWorker.js.map +1 -1
  228. package/dist/workers/WorkerMessages.d.ts +4 -1
  229. package/dist/workers/WorkerMessages.d.ts.map +1 -1
  230. package/dist/workers/WorkerMessages.js.map +1 -1
  231. package/native/macos/dmux-helper-Info.plist +30 -0
  232. package/native/macos/dmux-helper-icon.png +0 -0
  233. package/native/macos/dmux-helper.swift +831 -0
  234. package/native/macos/sounds/dmux-braam.caf +0 -0
  235. package/native/macos/sounds/dmux-brass.caf +0 -0
  236. package/native/macos/sounds/dmux-ding-bell.caf +0 -0
  237. package/native/macos/sounds/dmux-future.caf +0 -0
  238. package/native/macos/sounds/dmux-harp.caf +0 -0
  239. package/native/macos/sounds/dmux-quiet-bells.caf +0 -0
  240. package/native/macos/sounds/dmux-sonar.caf +0 -0
  241. package/native/macos/sounds/dmux-success.caf +0 -0
  242. package/native/macos/sounds/dmux-triumphant-trumpet.caf +0 -0
  243. package/native/macos/sounds/dmux-war-horn.caf +0 -0
  244. package/package.json +3 -1
@@ -5,10 +5,12 @@ import { StateManager } from "../shared/StateManager.js";
5
5
  import { LogService } from "./LogService.js";
6
6
  import { TmuxService } from "./TmuxService.js";
7
7
  import { SETTING_DEFINITIONS } from "../utils/settingsManager.js";
8
- import { getAvailableActions } from "../actions/index.js";
8
+ import { getPaneMenuActions } from "../actions/index.js";
9
9
  import { INPUT_IGNORE_DELAY } from "../constants/timing.js";
10
10
  import { getAgentDefinitions, isAgentName, resolveEnabledAgentsSelection, } from "../utils/agentLaunch.js";
11
+ import { getNotificationSoundDefinitions, resolveNotificationSoundsSelection, } from "../utils/notificationSounds.js";
11
12
  import { resolveDistPath } from "../utils/runtimePaths.js";
13
+ import { getPaneProjectRoot } from "../utils/paneProject.js";
12
14
  function isMergeUncommittedChoiceData(data) {
13
15
  if (!data || typeof data !== "object")
14
16
  return false;
@@ -36,10 +38,12 @@ export class PopupManager {
36
38
  config;
37
39
  setStatusMessage;
38
40
  setIgnoreInput;
41
+ trackProjectActivity;
39
42
  constructor(config, setStatusMessage, setIgnoreInput) {
40
43
  this.config = config;
41
44
  this.setStatusMessage = setStatusMessage;
42
45
  this.setIgnoreInput = setIgnoreInput;
46
+ this.trackProjectActivity = config.trackProjectActivity;
43
47
  }
44
48
  /**
45
49
  * Get the popup script path from project root
@@ -71,40 +75,42 @@ export class PopupManager {
71
75
  this.setIgnoreInput(true);
72
76
  setTimeout(() => this.setIgnoreInput(false), INPUT_IGNORE_DELAY);
73
77
  }
78
+ resolveActivityProjectRoot(projectRoot) {
79
+ return projectRoot || this.config.projectRoot;
80
+ }
74
81
  /**
75
82
  * Generic popup launcher with common logic
76
83
  */
77
- async launchPopup(scriptName, args, options, tempData) {
84
+ async launchPopup(scriptName, args, options, tempData, projectRoot) {
78
85
  const popupScriptPath = this.getPopupScriptPath(scriptName);
79
86
  let tempFile = null;
80
87
  try {
81
- // Write temp file if data provided
82
- if (tempData !== undefined) {
83
- tempFile = `/tmp/dmux-${scriptName.replace(".js", "")}-${Date.now()}.json`;
84
- await fs.writeFile(tempFile, JSON.stringify(tempData));
85
- args = [tempFile, ...args];
86
- }
87
- // Get positioning
88
- let positioning;
89
- if (options.positioning === "large") {
90
- // Use async dimension fetching for better performance
91
- const tmuxService = TmuxService.getInstance();
92
- const dims = await tmuxService.getAllDimensions();
93
- positioning = POPUP_POSITIONING.large(this.config.sidebarWidth, dims.clientWidth, dims.clientHeight);
94
- }
95
- else if (options.positioning === "centered") {
96
- positioning = POPUP_POSITIONING.centeredWithSidebar(this.config.sidebarWidth);
97
- }
98
- else {
99
- positioning = POPUP_POSITIONING.standard(this.config.sidebarWidth);
100
- }
101
- // Launch popup
102
- const popupHandle = launchNodePopupNonBlocking(popupScriptPath, args, {
103
- ...positioning,
104
- ...(options.width !== undefined && { width: options.width }),
105
- ...(options.height !== undefined && { height: options.height }),
106
- title: options.title,
107
- });
88
+ const popupHandle = await this.trackProjectActivity(async () => {
89
+ // Write temp file if data provided
90
+ if (tempData !== undefined) {
91
+ tempFile = `/tmp/dmux-${scriptName.replace(".js", "")}-${Date.now()}.json`;
92
+ await fs.writeFile(tempFile, JSON.stringify(tempData));
93
+ args = [tempFile, ...args];
94
+ }
95
+ let positioning;
96
+ if (options.positioning === "large") {
97
+ const tmuxService = TmuxService.getInstance();
98
+ const dims = await tmuxService.getAllDimensions();
99
+ positioning = POPUP_POSITIONING.large(this.config.sidebarWidth, dims.clientWidth, dims.clientHeight);
100
+ }
101
+ else if (options.positioning === "centered") {
102
+ positioning = POPUP_POSITIONING.centeredWithSidebar(this.config.sidebarWidth);
103
+ }
104
+ else {
105
+ positioning = POPUP_POSITIONING.standard(this.config.sidebarWidth);
106
+ }
107
+ return launchNodePopupNonBlocking(popupScriptPath, args, {
108
+ ...positioning,
109
+ ...(options.width !== undefined && { width: options.width }),
110
+ ...(options.height !== undefined && { height: options.height }),
111
+ title: options.title,
112
+ });
113
+ }, this.resolveActivityProjectRoot(projectRoot));
108
114
  // Wait for result
109
115
  const result = await popupHandle.resultPromise;
110
116
  // Clean up temp file
@@ -166,7 +172,7 @@ export class PopupManager {
166
172
  height: popupHeight,
167
173
  title: ` ✨ New Pane — ${projectName} `,
168
174
  positioning: "centered",
169
- });
175
+ }, undefined, projectPath);
170
176
  this.ignoreInputBriefly();
171
177
  return this.handleResult(result);
172
178
  }
@@ -175,16 +181,16 @@ export class PopupManager {
175
181
  return null;
176
182
  }
177
183
  }
178
- async launchKebabMenuPopup(pane) {
184
+ async launchKebabMenuPopup(pane, panes) {
179
185
  if (!this.checkPopupSupport())
180
186
  return null;
181
187
  try {
182
- const actions = getAvailableActions(pane, this.config.projectSettings, this.config.isDevMode);
188
+ const actions = getPaneMenuActions(pane, panes, this.config.projectSettings, this.config.isDevMode, this.config.projectRoot);
183
189
  const result = await this.launchPopup("kebabMenuPopup.js", [pane.slug, JSON.stringify(actions)], {
184
190
  width: 60,
185
191
  height: Math.min(20, actions.length + 5),
186
192
  title: `Menu: ${pane.slug}`,
187
- });
193
+ }, undefined, getPaneProjectRoot(pane, this.config.projectRoot));
188
194
  const actionId = this.handleResult(result, (data) => {
189
195
  LogService.getInstance().debug(`Action selected: ${data}`, "KebabMenu");
190
196
  return data;
@@ -199,7 +205,7 @@ export class PopupManager {
199
205
  return null;
200
206
  }
201
207
  }
202
- async launchConfirmPopup(title, message, yesLabel, noLabel) {
208
+ async launchConfirmPopup(title, message, yesLabel, noLabel, projectRoot) {
203
209
  if (!this.checkPopupSupport())
204
210
  return false;
205
211
  try {
@@ -214,7 +220,7 @@ export class PopupManager {
214
220
  width: 80,
215
221
  height: calculatedHeight,
216
222
  title: title || "Confirm",
217
- }, { title, message, yesLabel, noLabel });
223
+ }, { title, message, yesLabel, noLabel }, projectRoot);
218
224
  return this.handleResult(result) ?? false;
219
225
  }
220
226
  catch (error) {
@@ -222,7 +228,7 @@ export class PopupManager {
222
228
  return false;
223
229
  }
224
230
  }
225
- async launchAgentChoicePopup() {
231
+ async launchAgentChoicePopup(projectRoot) {
226
232
  if (!this.checkPopupSupport())
227
233
  return null;
228
234
  try {
@@ -239,7 +245,7 @@ export class PopupManager {
239
245
  width: 72,
240
246
  height: popupHeight,
241
247
  title: "Select Agent(s)",
242
- });
248
+ }, undefined, projectRoot);
243
249
  return this.handleResult(result);
244
250
  }
245
251
  catch (error) {
@@ -247,11 +253,12 @@ export class PopupManager {
247
253
  return null;
248
254
  }
249
255
  }
250
- async launchHooksPopup(onEditHooks) {
256
+ async launchHooksPopup(onEditHooks, projectRoot) {
251
257
  if (!this.checkPopupSupport())
252
258
  return;
253
259
  try {
254
260
  const { hasHook } = await import("../utils/hooks.js");
261
+ const hooksProjectRoot = this.resolveActivityProjectRoot(projectRoot);
255
262
  const allHookTypes = [
256
263
  "before_pane_create",
257
264
  "pane_created",
@@ -267,13 +274,13 @@ export class PopupManager {
267
274
  ];
268
275
  const hooks = allHookTypes.map((hookName) => ({
269
276
  name: hookName,
270
- active: hasHook(this.config.projectRoot || process.cwd(), hookName),
277
+ active: hasHook(hooksProjectRoot || process.cwd(), hookName),
271
278
  }));
272
279
  const result = await this.launchPopup("hooksPopup.js", [JSON.stringify(hooks)], {
273
280
  width: 70,
274
281
  height: 24,
275
282
  title: "🪝 Manage Hooks",
276
- });
283
+ }, undefined, projectRoot);
277
284
  const data = this.handleResult(result);
278
285
  if (data?.action === "edit") {
279
286
  await onEditHooks();
@@ -286,7 +293,7 @@ export class PopupManager {
286
293
  this.showTempMessage(`Failed to launch popup: ${error.message}`);
287
294
  }
288
295
  }
289
- async launchLogsPopup() {
296
+ async launchLogsPopup(projectRoot) {
290
297
  if (!this.checkPopupSupport())
291
298
  return;
292
299
  try {
@@ -299,7 +306,7 @@ export class PopupManager {
299
306
  const result = await this.launchPopup("logsPopup.js", [], {
300
307
  title: "🪵 dmux Logs",
301
308
  positioning: "large",
302
- }, logsData);
309
+ }, logsData, projectRoot);
303
310
  if (result.success) {
304
311
  stateManager.markAllLogsAsRead();
305
312
  // Check if user requested to clear logs
@@ -313,11 +320,11 @@ export class PopupManager {
313
320
  this.showTempMessage(`Failed to launch popup: ${error.message}`);
314
321
  }
315
322
  }
316
- async launchShortcutsPopup(hasSidebarLayout) {
323
+ async launchShortcutsPopup(hasSidebarLayout, projectRoot) {
317
324
  if (!this.checkPopupSupport())
318
325
  return null;
319
326
  try {
320
- const popupHeight = this.config.isDevMode ? 21 : 20;
327
+ const popupHeight = this.config.isDevMode ? 22 : 21;
321
328
  const result = await this.launchPopup("shortcutsPopup.js", [], {
322
329
  width: 50,
323
330
  height: popupHeight,
@@ -325,7 +332,7 @@ export class PopupManager {
325
332
  }, {
326
333
  hasSidebarLayout,
327
334
  isDevMode: this.config.isDevMode,
328
- });
335
+ }, projectRoot);
329
336
  this.ignoreInputBriefly();
330
337
  const data = this.handleResult(result);
331
338
  return data?.action === "hooks" ? "hooks" : null;
@@ -335,7 +342,7 @@ export class PopupManager {
335
342
  return null;
336
343
  }
337
344
  }
338
- async launchSettingsPopup(onLaunchHooks) {
345
+ async launchSettingsPopup(onLaunchHooks, projectRoot) {
339
346
  if (!this.checkPopupSupport())
340
347
  return null;
341
348
  try {
@@ -359,18 +366,47 @@ export class PopupManager {
359
366
  settings: this.config.settingsManager.getSettings(),
360
367
  globalSettings: this.config.settingsManager.getGlobalSettings(),
361
368
  projectSettings: this.config.settingsManager.getProjectSettings(),
362
- });
369
+ projectRoot: this.config.projectRoot,
370
+ controlPaneId: this.config.controlPaneId,
371
+ }, projectRoot);
363
372
  if (result.success) {
373
+ const data = result.data ?? {};
374
+ const pendingUpdates = Array.isArray(data.updates)
375
+ ? data.updates.filter((update) => typeof update?.key === "string"
376
+ && (update?.scope === "global" || update?.scope === "project"))
377
+ : [];
364
378
  // Check if this is an action result
365
- if (result.data?.action === "hooks") {
379
+ if (data.action === "hooks") {
366
380
  await onLaunchHooks();
367
- return null;
381
+ return pendingUpdates.length > 0 ? { updates: pendingUpdates } : null;
368
382
  }
369
- else if (result.data?.action === "enabledAgents") {
370
- return await this.launchEnabledAgentsPopup();
383
+ if (data.action === "enabledAgents") {
384
+ const enabledAgentsUpdate = await this.launchEnabledAgentsPopup(projectRoot);
385
+ if (enabledAgentsUpdate) {
386
+ pendingUpdates.push(enabledAgentsUpdate);
387
+ }
388
+ return pendingUpdates.length > 0 ? { updates: pendingUpdates } : null;
371
389
  }
372
- else if (result.data) {
373
- return result.data;
390
+ if (data.action === "enabledNotificationSounds") {
391
+ const notificationSoundsUpdate = await this.launchNotificationSoundsPopup(projectRoot);
392
+ if (notificationSoundsUpdate) {
393
+ pendingUpdates.push(notificationSoundsUpdate);
394
+ }
395
+ return pendingUpdates.length > 0 ? { updates: pendingUpdates } : null;
396
+ }
397
+ if (typeof data.key === "string" && (data.scope === "global" || data.scope === "project")) {
398
+ if (pendingUpdates.length > 0) {
399
+ return {
400
+ updates: [
401
+ ...pendingUpdates,
402
+ { key: data.key, value: data.value, scope: data.scope },
403
+ ],
404
+ };
405
+ }
406
+ return { key: data.key, value: data.value, scope: data.scope };
407
+ }
408
+ if (pendingUpdates.length > 0) {
409
+ return { updates: pendingUpdates };
374
410
  }
375
411
  }
376
412
  return null;
@@ -380,7 +416,7 @@ export class PopupManager {
380
416
  return null;
381
417
  }
382
418
  }
383
- async launchEnabledAgentsPopup() {
419
+ async launchEnabledAgentsPopup(projectRoot) {
384
420
  if (!this.checkPopupSupport())
385
421
  return null;
386
422
  try {
@@ -398,7 +434,7 @@ export class PopupManager {
398
434
  }, {
399
435
  agents: definitions,
400
436
  enabledAgents: configuredEnabled,
401
- });
437
+ }, projectRoot);
402
438
  const data = this.handleResult(result);
403
439
  if (!data)
404
440
  return null;
@@ -413,7 +449,40 @@ export class PopupManager {
413
449
  return null;
414
450
  }
415
451
  }
416
- async launchChoicePopup(title, message, options, data) {
452
+ async launchNotificationSoundsPopup(projectRoot) {
453
+ if (!this.checkPopupSupport())
454
+ return null;
455
+ try {
456
+ const settings = this.config.settingsManager.getSettings();
457
+ const configuredEnabled = resolveNotificationSoundsSelection(settings.enabledNotificationSounds);
458
+ const definitions = getNotificationSoundDefinitions().map((definition) => ({
459
+ id: definition.id,
460
+ label: definition.label,
461
+ defaultEnabled: definition.defaultEnabled,
462
+ }));
463
+ const result = await this.launchPopup("notificationSoundsPopup.js", [], {
464
+ width: 76,
465
+ height: Math.min(30, definitions.length + 12),
466
+ title: "Notification Sounds",
467
+ }, {
468
+ sounds: definitions,
469
+ enabledNotificationSounds: configuredEnabled,
470
+ }, projectRoot);
471
+ const data = this.handleResult(result);
472
+ if (!data)
473
+ return null;
474
+ return {
475
+ key: "enabledNotificationSounds",
476
+ value: data.enabledNotificationSounds,
477
+ scope: data.scope,
478
+ };
479
+ }
480
+ catch (error) {
481
+ this.showTempMessage(`Failed to launch popup: ${error.message}`);
482
+ return null;
483
+ }
484
+ }
485
+ async launchChoicePopup(title, message, options, data, projectRoot) {
417
486
  if (!this.checkPopupSupport())
418
487
  return null;
419
488
  try {
@@ -427,7 +496,7 @@ export class PopupManager {
427
496
  message,
428
497
  options,
429
498
  ...data,
430
- });
499
+ }, projectRoot);
431
500
  return this.handleResult(result);
432
501
  }
433
502
  const isConflictAgentChoice = /conflict resolution/i.test(title || "") &&
@@ -447,14 +516,24 @@ export class PopupManager {
447
516
  description: option.description,
448
517
  default: option.default,
449
518
  })),
450
- });
519
+ }, projectRoot);
451
520
  return this.handleResult(result);
452
521
  }
522
+ const messageLines = message.split("\n").reduce((count, line) => {
523
+ return count + Math.max(1, Math.ceil(line.length / 65));
524
+ }, 0);
525
+ const optionLines = options.reduce((count, option, index) => {
526
+ const optionRowHeight = option.description ? 2 : 1;
527
+ const optionSpacing = index < options.length - 1 ? 1 : 0;
528
+ return count + optionRowHeight + optionSpacing;
529
+ }, 0);
530
+ const maxHeight = Math.max(12, Math.min(35, this.config.terminalHeight - 4));
531
+ const calculatedHeight = Math.max(12, Math.min(maxHeight, messageLines + optionLines + 6));
453
532
  const result = await this.launchPopup("choicePopup.js", [], {
454
533
  width: 70,
455
- height: Math.min(25, options.length * 3 + 8),
534
+ height: calculatedHeight,
456
535
  title: title || "Choose Option",
457
- }, { title, message, options });
536
+ }, { title, message, options }, projectRoot);
458
537
  return this.handleResult(result);
459
538
  }
460
539
  catch (error) {
@@ -462,7 +541,7 @@ export class PopupManager {
462
541
  return null;
463
542
  }
464
543
  }
465
- async launchProjectSelectPopup(defaultValue) {
544
+ async launchProjectSelectPopup(defaultValue, projectRoot) {
466
545
  if (!this.checkPopupSupport())
467
546
  return null;
468
547
  try {
@@ -471,7 +550,7 @@ export class PopupManager {
471
550
  height: 25,
472
551
  title: " Select Project ",
473
552
  positioning: "centered",
474
- }, { defaultValue: defaultValue || "" });
553
+ }, { defaultValue: defaultValue || "" }, projectRoot || defaultValue);
475
554
  this.ignoreInputBriefly();
476
555
  return this.handleResult(result);
477
556
  }
@@ -480,7 +559,7 @@ export class PopupManager {
480
559
  return null;
481
560
  }
482
561
  }
483
- async launchInputPopup(title, message, placeholder, defaultValue) {
562
+ async launchInputPopup(title, message, placeholder, defaultValue, projectRoot) {
484
563
  if (!this.checkPopupSupport())
485
564
  return null;
486
565
  try {
@@ -488,7 +567,7 @@ export class PopupManager {
488
567
  width: 70,
489
568
  height: 15,
490
569
  title: title || "Input",
491
- }, { title, message, placeholder, defaultValue });
570
+ }, { title, message, placeholder, defaultValue }, projectRoot);
492
571
  return this.handleResult(result);
493
572
  }
494
573
  catch (error) {
@@ -496,7 +575,7 @@ export class PopupManager {
496
575
  return null;
497
576
  }
498
577
  }
499
- async launchProgressPopup(message, type = "info", timeout = 2000) {
578
+ async launchProgressPopup(message, type = "info", timeout = 2000, projectRoot) {
500
579
  if (!this.config.popupsSupported) {
501
580
  this.showTempMessage(message, timeout);
502
581
  return;
@@ -512,13 +591,13 @@ export class PopupManager {
512
591
  width: 70,
513
592
  height: Math.min(15, lines + 4),
514
593
  title: titleText,
515
- }, { message, type, timeout });
594
+ }, { message, type, timeout }, projectRoot);
516
595
  }
517
596
  catch (error) {
518
597
  this.showTempMessage(message, timeout);
519
598
  }
520
599
  }
521
- async launchReopenWorktreePopup(worktrees) {
600
+ async launchReopenWorktreePopup(worktrees, projectRoot) {
522
601
  if (!this.checkPopupSupport())
523
602
  return null;
524
603
  try {
@@ -531,7 +610,7 @@ export class PopupManager {
531
610
  width: 70,
532
611
  height: Math.min(25, worktrees.length * 3 + 8),
533
612
  title: "📂 Reopen Closed Worktree",
534
- }, { worktrees: worktreesData });
613
+ }, { worktrees: worktreesData }, projectRoot);
535
614
  return this.handleResult(result);
536
615
  }
537
616
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"PopupManager.js","sourceRoot":"","sources":["../../src/services/PopupManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PopupManager.js","sourceRoot":"","sources":["../../src/services/PopupManager.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,18 @@ export interface StatusUpdateEvent {
12
12
  summary?: string;
13
13
  analyzerError?: string;
14
14
  }
15
+ export interface AttentionNeededEvent {
16
+ paneId: string;
17
+ tmuxPaneId: string;
18
+ status: Extract<AgentStatus, 'idle' | 'waiting'>;
19
+ title: string;
20
+ body: string;
21
+ subtitle?: string;
22
+ fingerprint: string;
23
+ }
24
+ export interface PaneUserInteractionEvent {
25
+ paneId: string;
26
+ }
15
27
  /**
16
28
  * High-level service coordinating status detection via workers and LLM
17
29
  */
@@ -44,10 +56,12 @@ export declare class StatusDetector extends EventEmitter {
44
56
  * Cancel LLM request for a pane
45
57
  */
46
58
  private cancelLLMRequest;
59
+ private handleUserInteraction;
47
60
  /**
48
61
  * Handle autopilot: automatically accept options when enabled and no risk
49
62
  */
50
63
  private handleAutopilot;
64
+ private buildAttentionEvent;
51
65
  /**
52
66
  * Get tmux pane ID for a dmux pane
53
67
  */
@@ -1 +1 @@
1
- {"version":3,"file":"StatusDetector.d.ts","sourceRoot":"","sources":["../../src/services/StatusDetector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACtF,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAO3D,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,WAAW,CAAC;IACpB,cAAc,CAAC,EAAE,WAAW,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,YAAY;IAC9C,OAAO,CAAC,aAAa,CAAoB;IACzC,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,YAAY,CAAkC;IACtD,OAAO,CAAC,WAAW,CAAsC;IACzD,OAAO,CAAC,SAAS,CAA6B;IAC9C,OAAO,CAAC,cAAc,CAAS;;IAW/B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA4B5B;;OAEG;IACG,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAcpD;;OAEG;YACW,kBAAkB;IAkChC;;OAEG;YACW,qBAAqB;IAsKnC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAQxB;;OAEG;YACW,eAAe;IAkF7B;;OAEG;YACW,aAAa;IAI3B;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAIlD;;OAEG;IACH,cAAc,IAAI,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC;IAI1C;;OAEG;IACG,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQjE;;OAEG;IACG,UAAU,CACd,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC;IAQhB;;OAEG;IACH,QAAQ,IAAI;QACV,WAAW,EAAE,UAAU,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC;QACvD,eAAe,EAAE,UAAU,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;QAC1D,YAAY,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC1C,mBAAmB,EAAE,MAAM,CAAC;KAC7B;IAoBD;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAoBhC;AAKD,wBAAgB,iBAAiB,IAAI,cAAc,CAKlD;AAED,wBAAgB,mBAAmB,IAAI,IAAI,CAK1C"}
1
+ {"version":3,"file":"StatusDetector.d.ts","sourceRoot":"","sources":["../../src/services/StatusDetector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACtF,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAO3D,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,WAAW,CAAC;IACpB,cAAc,CAAC,EAAE,WAAW,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACjD,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,MAAM,CAAC;CAChB;AAKD;;GAEG;AACH,qBAAa,cAAe,SAAQ,YAAY;IAC9C,OAAO,CAAC,aAAa,CAAoB;IACzC,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,YAAY,CAAkC;IACtD,OAAO,CAAC,WAAW,CAAsC;IACzD,OAAO,CAAC,SAAS,CAA6B;IAC9C,OAAO,CAAC,cAAc,CAAS;;IAW/B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAgC5B;;OAEG;IACG,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAcpD;;OAEG;YACW,kBAAkB;IAiChC;;OAEG;YACW,qBAAqB;IAiLnC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,qBAAqB;IAO7B;;OAEG;YACW,eAAe;IAkF7B,OAAO,CAAC,mBAAmB;IAwC3B;;OAEG;YACW,aAAa;IAI3B;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS;IAIlD;;OAEG;IACH,cAAc,IAAI,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC;IAI1C;;OAEG;IACG,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQjE;;OAEG;IACG,UAAU,CACd,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC;IAQhB;;OAEG;IACH,QAAQ,IAAI;QACV,WAAW,EAAE,UAAU,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC;QACvD,eAAe,EAAE,UAAU,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;QAC1D,YAAY,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC1C,mBAAmB,EAAE,MAAM,CAAC;KAC7B;IAoBD;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAoBhC;AAKD,wBAAgB,iBAAiB,IAAI,cAAc,CAKlD;AAED,wBAAgB,mBAAmB,IAAI,IAAI,CAK1C"}