dmux 2.2.0 → 3.0.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 (197) hide show
  1. package/dist/DmuxApp.d.ts.map +1 -1
  2. package/dist/DmuxApp.js +412 -179
  3. package/dist/DmuxApp.js.map +1 -1
  4. package/dist/MergePane.d.ts.map +1 -1
  5. package/dist/MergePane.js +4 -15
  6. package/dist/MergePane.js.map +1 -1
  7. package/dist/PaneAnalyzer.d.ts +45 -0
  8. package/dist/PaneAnalyzer.d.ts.map +1 -0
  9. package/dist/PaneAnalyzer.js +278 -0
  10. package/dist/PaneAnalyzer.js.map +1 -0
  11. package/dist/_plugin-vue_export-helper.css +1 -0
  12. package/dist/actions/index.d.ts +19 -0
  13. package/dist/actions/index.d.ts.map +1 -0
  14. package/dist/actions/index.js +54 -0
  15. package/dist/actions/index.js.map +1 -0
  16. package/dist/actions/paneActions.d.ts +45 -0
  17. package/dist/actions/paneActions.d.ts.map +1 -0
  18. package/dist/actions/paneActions.js +932 -0
  19. package/dist/actions/paneActions.js.map +1 -0
  20. package/dist/actions/types.d.ts +101 -0
  21. package/dist/actions/types.d.ts.map +1 -0
  22. package/dist/actions/types.js +129 -0
  23. package/dist/actions/types.js.map +1 -0
  24. package/dist/adapters/apiActionHandler.d.ts +64 -0
  25. package/dist/adapters/apiActionHandler.d.ts.map +1 -0
  26. package/dist/adapters/apiActionHandler.js +170 -0
  27. package/dist/adapters/apiActionHandler.js.map +1 -0
  28. package/dist/adapters/tuiActionHandler.d.ts +57 -0
  29. package/dist/adapters/tuiActionHandler.d.ts.map +1 -0
  30. package/dist/adapters/tuiActionHandler.js +152 -0
  31. package/dist/adapters/tuiActionHandler.js.map +1 -0
  32. package/dist/chunks/_plugin-vue_export-helper-Cvoq67hi.js +28 -0
  33. package/dist/components/ActionChoiceDialog.d.ts +16 -0
  34. package/dist/components/ActionChoiceDialog.d.ts.map +1 -0
  35. package/dist/components/ActionChoiceDialog.js +29 -0
  36. package/dist/components/ActionChoiceDialog.js.map +1 -0
  37. package/dist/components/ActionConfirmDialog.d.ts +16 -0
  38. package/dist/components/ActionConfirmDialog.d.ts.map +1 -0
  39. package/dist/components/ActionConfirmDialog.js +31 -0
  40. package/dist/components/ActionConfirmDialog.js.map +1 -0
  41. package/dist/components/ActionInputDialog.d.ts +16 -0
  42. package/dist/components/ActionInputDialog.d.ts.map +1 -0
  43. package/dist/components/ActionInputDialog.js +49 -0
  44. package/dist/components/ActionInputDialog.js.map +1 -0
  45. package/dist/components/ActionProgressDialog.d.ts +13 -0
  46. package/dist/components/ActionProgressDialog.d.ts.map +1 -0
  47. package/dist/components/ActionProgressDialog.js +20 -0
  48. package/dist/components/ActionProgressDialog.js.map +1 -0
  49. package/dist/components/FooterHelp.d.ts +2 -0
  50. package/dist/components/FooterHelp.d.ts.map +1 -1
  51. package/dist/components/FooterHelp.js +9 -2
  52. package/dist/components/FooterHelp.js.map +1 -1
  53. package/dist/components/KebabMenu.d.ts +10 -0
  54. package/dist/components/KebabMenu.d.ts.map +1 -0
  55. package/dist/components/KebabMenu.js +18 -0
  56. package/dist/components/KebabMenu.js.map +1 -0
  57. package/dist/components/LoadingIndicator.d.ts.map +1 -1
  58. package/dist/components/LoadingIndicator.js +5 -5
  59. package/dist/components/LoadingIndicator.js.map +1 -1
  60. package/dist/components/PaneCard.d.ts +1 -0
  61. package/dist/components/PaneCard.d.ts.map +1 -1
  62. package/dist/components/PaneCard.js +21 -20
  63. package/dist/components/PaneCard.js.map +1 -1
  64. package/dist/components/PanesGrid.d.ts +1 -0
  65. package/dist/components/PanesGrid.d.ts.map +1 -1
  66. package/dist/components/PanesGrid.js +5 -4
  67. package/dist/components/PanesGrid.js.map +1 -1
  68. package/dist/components/QRCode.d.ts +7 -0
  69. package/dist/components/QRCode.d.ts.map +1 -0
  70. package/dist/components/QRCode.js +19 -0
  71. package/dist/components/QRCode.js.map +1 -0
  72. package/dist/components/Spinner.d.ts +10 -0
  73. package/dist/components/Spinner.d.ts.map +1 -0
  74. package/dist/components/Spinner.js +15 -0
  75. package/dist/components/Spinner.js.map +1 -0
  76. package/dist/dashboard.html +14 -0
  77. package/dist/dashboard.js +2 -0
  78. package/dist/hooks/useActionSystem.d.ts +31 -0
  79. package/dist/hooks/useActionSystem.d.ts.map +1 -0
  80. package/dist/hooks/useActionSystem.js +95 -0
  81. package/dist/hooks/useActionSystem.js.map +1 -0
  82. package/dist/hooks/useAgentStatus.d.ts +4 -3
  83. package/dist/hooks/useAgentStatus.d.ts.map +1 -1
  84. package/dist/hooks/useAgentStatus.js +45 -194
  85. package/dist/hooks/useAgentStatus.js.map +1 -1
  86. package/dist/hooks/usePaneCreation.d.ts +2 -1
  87. package/dist/hooks/usePaneCreation.d.ts.map +1 -1
  88. package/dist/hooks/usePaneCreation.js +46 -100
  89. package/dist/hooks/usePaneCreation.js.map +1 -1
  90. package/dist/hooks/usePanes.d.ts.map +1 -1
  91. package/dist/hooks/usePanes.js +5 -3
  92. package/dist/hooks/usePanes.js.map +1 -1
  93. package/dist/hooks/useTerminalWidth.d.ts.map +1 -1
  94. package/dist/hooks/useTerminalWidth.js +18 -1
  95. package/dist/hooks/useTerminalWidth.js.map +1 -1
  96. package/dist/hooks/useWorktreeActions.d.ts.map +1 -1
  97. package/dist/hooks/useWorktreeActions.js +4 -0
  98. package/dist/hooks/useWorktreeActions.js.map +1 -1
  99. package/dist/index.js +43 -6
  100. package/dist/index.js.map +1 -1
  101. package/dist/server/actionsApi.d.ts +37 -0
  102. package/dist/server/actionsApi.d.ts.map +1 -0
  103. package/dist/server/actionsApi.js +256 -0
  104. package/dist/server/actionsApi.js.map +1 -0
  105. package/dist/server/embedded-assets.d.ts +13 -0
  106. package/dist/server/embedded-assets.d.ts.map +1 -0
  107. package/dist/server/embedded-assets.js +5012 -0
  108. package/dist/server/embedded-assets.js.map +1 -0
  109. package/dist/server/index.d.ts +21 -0
  110. package/dist/server/index.d.ts.map +1 -0
  111. package/dist/server/index.js +99 -0
  112. package/dist/server/index.js.map +1 -0
  113. package/dist/server/routes.d.ts +3 -0
  114. package/dist/server/routes.d.ts.map +1 -0
  115. package/dist/server/routes.js +672 -0
  116. package/dist/server/routes.js.map +1 -0
  117. package/dist/server/static.d.ts +6 -0
  118. package/dist/server/static.d.ts.map +1 -0
  119. package/dist/server/static.js +3040 -0
  120. package/dist/server/static.js.map +1 -0
  121. package/dist/services/ConfigWatcher.d.ts +20 -0
  122. package/dist/services/ConfigWatcher.d.ts.map +1 -0
  123. package/dist/services/ConfigWatcher.js +75 -0
  124. package/dist/services/ConfigWatcher.js.map +1 -0
  125. package/dist/services/PaneWorkerManager.d.ts +69 -0
  126. package/dist/services/PaneWorkerManager.d.ts.map +1 -0
  127. package/dist/services/PaneWorkerManager.js +272 -0
  128. package/dist/services/PaneWorkerManager.js.map +1 -0
  129. package/dist/services/StatusDetector.d.ts +87 -0
  130. package/dist/services/StatusDetector.d.ts.map +1 -0
  131. package/dist/services/StatusDetector.js +387 -0
  132. package/dist/services/StatusDetector.js.map +1 -0
  133. package/dist/services/TerminalDiffer.d.ts +85 -0
  134. package/dist/services/TerminalDiffer.d.ts.map +1 -0
  135. package/dist/services/TerminalDiffer.js +499 -0
  136. package/dist/services/TerminalDiffer.js.map +1 -0
  137. package/dist/services/TerminalStreamer.d.ts +80 -0
  138. package/dist/services/TerminalStreamer.d.ts.map +1 -0
  139. package/dist/services/TerminalStreamer.js +490 -0
  140. package/dist/services/TerminalStreamer.js.map +1 -0
  141. package/dist/services/TunnelService.d.ts +9 -0
  142. package/dist/services/TunnelService.d.ts.map +1 -0
  143. package/dist/services/TunnelService.js +34 -0
  144. package/dist/services/TunnelService.js.map +1 -0
  145. package/dist/services/WorkerMessageBus.d.ts +48 -0
  146. package/dist/services/WorkerMessageBus.d.ts.map +1 -0
  147. package/dist/services/WorkerMessageBus.js +120 -0
  148. package/dist/services/WorkerMessageBus.js.map +1 -0
  149. package/dist/shared/StateManager.d.ts +34 -0
  150. package/dist/shared/StateManager.d.ts.map +1 -0
  151. package/dist/shared/StateManager.js +108 -0
  152. package/dist/shared/StateManager.js.map +1 -0
  153. package/dist/shared/StreamProtocol.d.ts +75 -0
  154. package/dist/shared/StreamProtocol.d.ts.map +1 -0
  155. package/dist/shared/StreamProtocol.js +37 -0
  156. package/dist/shared/StreamProtocol.js.map +1 -0
  157. package/dist/terminal.html +17 -0
  158. package/dist/terminal.js +3 -0
  159. package/dist/types.d.ts +21 -1
  160. package/dist/types.d.ts.map +1 -1
  161. package/dist/utils/agentDetection.d.ts +18 -0
  162. package/dist/utils/agentDetection.d.ts.map +1 -0
  163. package/dist/utils/agentDetection.js +73 -0
  164. package/dist/utils/agentDetection.js.map +1 -0
  165. package/dist/utils/aiMerge.d.ts +35 -0
  166. package/dist/utils/aiMerge.d.ts.map +1 -0
  167. package/dist/utils/aiMerge.js +298 -0
  168. package/dist/utils/aiMerge.js.map +1 -0
  169. package/dist/utils/conflictResolutionPane.d.ts +19 -0
  170. package/dist/utils/conflictResolutionPane.d.ts.map +1 -0
  171. package/dist/utils/conflictResolutionPane.js +214 -0
  172. package/dist/utils/conflictResolutionPane.js.map +1 -0
  173. package/dist/utils/mergeExecution.d.ts +52 -0
  174. package/dist/utils/mergeExecution.d.ts.map +1 -0
  175. package/dist/utils/mergeExecution.js +192 -0
  176. package/dist/utils/mergeExecution.js.map +1 -0
  177. package/dist/utils/mergeValidation.d.ts +67 -0
  178. package/dist/utils/mergeValidation.d.ts.map +1 -0
  179. package/dist/utils/mergeValidation.js +213 -0
  180. package/dist/utils/mergeValidation.js.map +1 -0
  181. package/dist/utils/paneCreation.d.ts +17 -0
  182. package/dist/utils/paneCreation.d.ts.map +1 -0
  183. package/dist/utils/paneCreation.js +274 -0
  184. package/dist/utils/paneCreation.js.map +1 -0
  185. package/dist/utils/port.d.ts +5 -0
  186. package/dist/utils/port.d.ts.map +1 -0
  187. package/dist/utils/port.js +54 -0
  188. package/dist/utils/port.js.map +1 -0
  189. package/dist/workers/PaneWorker.d.ts +2 -0
  190. package/dist/workers/PaneWorker.d.ts.map +1 -0
  191. package/dist/workers/PaneWorker.js +362 -0
  192. package/dist/workers/PaneWorker.js.map +1 -0
  193. package/dist/workers/WorkerMessages.d.ts +36 -0
  194. package/dist/workers/WorkerMessages.d.ts.map +1 -0
  195. package/dist/workers/WorkerMessages.js +9 -0
  196. package/dist/workers/WorkerMessages.js.map +1 -0
  197. package/package.json +19 -5
@@ -1 +1 @@
1
- {"version":3,"file":"useAgentStatus.d.ts","sourceRoot":"","sources":["../../src/hooks/useAgentStatus.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,UAAU,oBAAoB;IAC5B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;CAClB;AAOD,MAAM,MAAM,cAAc,GAAG,GAAG,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC;AAErF,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,oBAAoB,GAAG,cAAc,CA+N/F"}
1
+ {"version":3,"file":"useAgentStatus.d.ts","sourceRoot":"","sources":["../../src/hooks/useAgentStatus.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAGzD,UAAU,oBAAoB;IAC5B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAC1C;AAGD,MAAM,MAAM,cAAc,GAAG,GAAG,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAAC,CAAC;AAElE,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,oBAAoB,GAAG,cAAc,CAgE9G"}
@@ -1,206 +1,57 @@
1
1
  import { useEffect, useState, useRef } from 'react';
2
- import { execSync } from 'child_process';
3
- // Move these outside the component to persist across re-renders
4
- const lastCheckTimes = new Map();
5
- const statusHistory = new Map();
6
- export default function useAgentStatus({ panes, suspend }) {
2
+ import { getStatusDetector } from '../services/StatusDetector.js';
3
+ export default function useAgentStatus({ panes, suspend, onPaneRemoved }) {
7
4
  const [statuses, setStatuses] = useState(new Map());
8
- const statusesRef = useRef(statuses);
5
+ const statusDetector = useRef(getStatusDetector());
9
6
  const panesRef = useRef(panes);
7
+ const onPaneRemovedRef = useRef(onPaneRemoved);
10
8
  // Keep refs up to date
11
- statusesRef.current = statuses;
12
9
  panesRef.current = panes;
10
+ onPaneRemovedRef.current = onPaneRemoved;
13
11
  useEffect(() => {
14
- if (panes.length === 0)
15
- return;
16
- // Clean up maps for panes that no longer exist
17
- const currentPaneIds = new Set(panesRef.current.map(p => p.id));
18
- for (const [paneId] of lastCheckTimes) {
19
- if (!currentPaneIds.has(paneId)) {
20
- lastCheckTimes.delete(paneId);
21
- statusHistory.delete(paneId);
12
+ const detector = statusDetector.current;
13
+ // Subscribe to status updates from the detector
14
+ const handleStatusUpdate = (event) => {
15
+ setStatuses(prevStatuses => {
16
+ const newStatuses = new Map(prevStatuses);
17
+ newStatuses.set(event.paneId, event.status);
18
+ return newStatuses;
19
+ });
20
+ };
21
+ // Handle pane removal events
22
+ const handlePaneRemoved = (event) => {
23
+ // Remove from statuses
24
+ setStatuses(prevStatuses => {
25
+ const newStatuses = new Map(prevStatuses);
26
+ newStatuses.delete(event.paneId);
27
+ return newStatuses;
28
+ });
29
+ // Call callback if provided
30
+ if (onPaneRemovedRef.current) {
31
+ onPaneRemovedRef.current(event.paneId);
22
32
  }
23
- }
24
- const startupDelay = setTimeout(() => {
25
- const monitorAgentStatus = async () => {
26
- if (suspend)
27
- return;
28
- const newStatuses = new Map();
29
- await Promise.all(panesRef.current.map(async (pane) => {
30
- try {
31
- // Check against our map instead of pane state
32
- const lastCheck = lastCheckTimes.get(pane.id) || 0;
33
- if (Date.now() - lastCheck < 500) {
34
- // Keep current status if too soon to check again
35
- newStatuses.set(pane.id, statusesRef.current.get(pane.id));
36
- return;
37
- }
38
- // Update check time in map
39
- lastCheckTimes.set(pane.id, Date.now());
40
- let effectivePaneId = pane.paneId;
41
- let paneExists = false;
42
- try {
43
- const paneIds = execSync(`tmux list-panes -s -F '#{pane_id}'`, {
44
- encoding: 'utf-8',
45
- stdio: 'pipe',
46
- timeout: 500,
47
- }).trim().split('\n').filter(id => id && id.startsWith('%'));
48
- paneExists = paneIds.includes(effectivePaneId);
49
- if (!paneExists) {
50
- try {
51
- const out = execSync(`tmux list-panes -s -F '#{pane_id}::#{pane_title}'`, {
52
- encoding: 'utf-8',
53
- stdio: 'pipe',
54
- timeout: 500,
55
- }).trim();
56
- if (out) {
57
- const titleToId = new Map();
58
- out.split('\n').forEach(line => {
59
- const [id, title] = line.split('::');
60
- if (id && title)
61
- titleToId.set(title.trim(), id);
62
- });
63
- const remappedId = titleToId.get(pane.slug);
64
- if (remappedId) {
65
- effectivePaneId = remappedId;
66
- paneExists = true;
67
- }
68
- }
69
- }
70
- catch { }
71
- }
72
- }
73
- catch {
74
- paneExists = true;
75
- }
76
- if (!paneExists) {
77
- // Keep current status if pane doesn't exist in tmux
78
- newStatuses.set(pane.id, statusesRef.current.get(pane.id));
79
- return;
80
- }
81
- const captureOutput = execSync(`tmux capture-pane -t '${effectivePaneId}' -p -S -30`, { encoding: 'utf-8', stdio: 'pipe' });
82
- const lines = captureOutput.split('\n');
83
- const lastLines = lines.slice(-10).join('\n');
84
- // First, detect if Claude/opencode is actively working
85
- let isWorking = false;
86
- if (pane.agent === 'opencode') {
87
- const workingPatterns = [
88
- /esc\s+(to\s+)?interrupt/i,
89
- /working(\.|\.{2}|\.{3})/i,
90
- ];
91
- isWorking = workingPatterns.some(pattern => pattern.test(lastLines));
92
- }
93
- else {
94
- // For Claude, "esc to interrupt" is the primary indicator it's working
95
- isWorking = /esc to interrupt/i.test(captureOutput);
96
- }
97
- // If actively working, that takes precedence - don't check other patterns
98
- let newStatus = 'idle';
99
- if (isWorking) {
100
- newStatus = 'working';
101
- }
102
- else {
103
- // Only check for attention patterns if NOT working
104
- const attentionPatterns = [
105
- /\?\s*$/m,
106
- /y\/n/i,
107
- /yes.*no/i,
108
- /\ballow\b.*\?/i,
109
- /\bapprove\b.*\?/i,
110
- /\bgrant\b.*\?/i,
111
- /\btrust\b.*\?/i,
112
- /\baccept\b.*\?/i,
113
- /\bcontinue\b.*\?/i,
114
- /\bproceed\b.*\?/i,
115
- /permission/i,
116
- /confirmation/i,
117
- /press.*enter/i,
118
- /waiting for/i,
119
- /are you sure/i,
120
- /would you like/i,
121
- /do you want/i,
122
- /please confirm/i,
123
- /requires.*approval/i,
124
- /needs.*input/i,
125
- /⏵⏵\s*accept edits/i,
126
- /shift\+tab to cycle/i,
127
- ];
128
- const hasClaudeInputBox = /╭─+╮/.test(lastLines) && /╰─+╯/.test(lastLines) && /│\s+>\s+.*│/.test(lastLines);
129
- const needsAttention = attentionPatterns.some(pattern => pattern.test(captureOutput)) ||
130
- (pane.agent !== 'opencode' && hasClaudeInputBox);
131
- if (needsAttention) {
132
- newStatus = 'waiting';
133
- }
134
- // Additional Claude-specific checks
135
- if (pane.agent !== 'opencode') {
136
- // Check for accept edits specifically (without esc to interrupt means waiting)
137
- if (/accept edits/i.test(captureOutput)) {
138
- newStatus = 'waiting';
139
- }
140
- // Check for Claude questions
141
- const claudeQuestionPatterns = [
142
- /I (can|could|should|would|will|may|might)/i,
143
- /Let me know/i,
144
- /Please (tell|let|inform|advise)/i,
145
- /Would you prefer/i,
146
- /Should I (proceed|continue|go ahead)/i,
147
- ];
148
- if (claudeQuestionPatterns.some(pattern => pattern.test(lastLines))) {
149
- newStatus = 'waiting';
150
- }
151
- }
152
- }
153
- // Add stability check - require consistent status for multiple checks
154
- const history = statusHistory.get(pane.id) || [];
155
- const currentStatus = statusesRef.current.get(pane.id) || 'idle';
156
- // Initialize with current status if no history
157
- if (history.length === 0 && currentStatus !== 'idle') {
158
- history.push(currentStatus);
159
- }
160
- history.push(newStatus);
161
- // Keep only last 4 status checks for better stability
162
- if (history.length > 4)
163
- history.shift();
164
- statusHistory.set(pane.id, history);
165
- // Determine stable status - require 2 consistent readings to change
166
- let stableStatus = currentStatus;
167
- if (history.length >= 2) {
168
- // Count occurrences of each status in recent history
169
- const statusCounts = new Map();
170
- history.forEach(s => statusCounts.set(s, (statusCounts.get(s) || 0) + 1));
171
- // Find the most common status
172
- let maxCount = 0;
173
- let mostCommonStatus = stableStatus;
174
- for (const [status, count] of statusCounts) {
175
- if (count > maxCount) {
176
- maxCount = count;
177
- mostCommonStatus = status;
178
- }
179
- }
180
- // Only change if new status appears at least twice
181
- if (mostCommonStatus !== currentStatus && maxCount >= 2) {
182
- stableStatus = mostCommonStatus;
183
- }
184
- }
185
- // Set the status in the map
186
- newStatuses.set(pane.id, stableStatus);
187
- }
188
- catch (error) {
189
- // On error, keep the current status
190
- newStatuses.set(pane.id, statusesRef.current.get(pane.id));
191
- }
192
- }));
193
- // Update the statuses state if there were any changes
194
- setStatuses(newStatuses);
195
- };
196
- monitorAgentStatus();
197
- const agentInterval = setInterval(monitorAgentStatus, 2000);
198
- return () => clearInterval(agentInterval);
199
- }, 500);
33
+ };
34
+ // Listen for status updates
35
+ detector.on('status-updated', handleStatusUpdate);
36
+ detector.on('pane-removed', handlePaneRemoved);
37
+ // Initial load of current statuses
38
+ const currentStatuses = detector.getAllStatuses();
39
+ setStatuses(currentStatuses);
200
40
  return () => {
201
- clearTimeout(startupDelay);
41
+ detector.off('status-updated', handleStatusUpdate);
42
+ detector.off('pane-removed', handlePaneRemoved);
202
43
  };
203
- }, [panes.length, suspend]); // Only re-run if number of panes changes or suspend changes
44
+ }, []);
45
+ useEffect(() => {
46
+ const detector = statusDetector.current;
47
+ // Update monitoring when panes change or suspend state changes
48
+ if (!suspend && panes.length > 0) {
49
+ // Start monitoring these panes
50
+ detector.monitorPanes(panes).catch(err => {
51
+ console.error('Failed to monitor panes:', err);
52
+ });
53
+ }
54
+ }, [panes, suspend]);
204
55
  return statuses;
205
56
  }
206
57
  //# sourceMappingURL=useAgentStatus.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useAgentStatus.js","sourceRoot":"","sources":["../../src/hooks/useAgentStatus.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useAgentStatus.js","sourceRoot":"","sources":["../../src/hooks/useAgentStatus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAEpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAWlE,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAwB;IAC5F,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAiB,IAAI,GAAG,EAAE,CAAC,CAAC;IACpE,MAAM,cAAc,GAAG,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,MAAM,gBAAgB,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;IAE/C,uBAAuB;IACvB,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC;IACzB,gBAAgB,CAAC,OAAO,GAAG,aAAa,CAAC;IAEzC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC;QAExC,gDAAgD;QAChD,MAAM,kBAAkB,GAAG,CAAC,KAAU,EAAE,EAAE;YACxC,WAAW,CAAC,YAAY,CAAC,EAAE;gBACzB,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;gBAC1C,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;gBAC5C,OAAO,WAAW,CAAC;YACrB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,6BAA6B;QAC7B,MAAM,iBAAiB,GAAG,CAAC,KAAU,EAAE,EAAE;YACvC,uBAAuB;YACvB,WAAW,CAAC,YAAY,CAAC,EAAE;gBACzB,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;gBAC1C,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACjC,OAAO,WAAW,CAAC;YACrB,CAAC,CAAC,CAAC;YAEH,4BAA4B;YAC5B,IAAI,gBAAgB,CAAC,OAAO,EAAE,CAAC;gBAC7B,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACzC,CAAC;QACH,CAAC,CAAC;QAEF,4BAA4B;QAC5B,QAAQ,CAAC,EAAE,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAAC;QAClD,QAAQ,CAAC,EAAE,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;QAE/C,mCAAmC;QACnC,MAAM,eAAe,GAAG,QAAQ,CAAC,cAAc,EAAE,CAAC;QAClD,WAAW,CAAC,eAAe,CAAC,CAAC;QAE7B,OAAO,GAAG,EAAE;YACV,QAAQ,CAAC,GAAG,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAAC;YACnD,QAAQ,CAAC,GAAG,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;QAClD,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC;QAExC,+DAA+D;QAC/D,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjC,+BAA+B;YAC/B,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;gBACvC,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAC;YACjD,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IAErB,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -8,8 +8,9 @@ interface Params {
8
8
  setNewPanePrompt: (v: string) => void;
9
9
  loadPanes: () => Promise<void>;
10
10
  panesFile: string;
11
+ availableAgents: Array<'claude' | 'opencode'>;
11
12
  }
12
- export default function usePaneCreation({ panes, savePanes, projectName, setIsCreatingPane, setStatusMessage, setNewPanePrompt, loadPanes, panesFile }: Params): {
13
+ export default function usePaneCreation({ panes, savePanes, projectName, setIsCreatingPane, setStatusMessage, setNewPanePrompt, loadPanes, panesFile, availableAgents }: Params): {
13
14
  readonly openInEditor: (currentPrompt: string, setPrompt: (v: string) => void) => Promise<void>;
14
15
  readonly createNewPane: (prompt: string, agent?: "claude" | "opencode") => Promise<void>;
15
16
  };
@@ -1 +1 @@
1
- {"version":3,"file":"usePaneCreation.d.ts","sourceRoot":"","sources":["../../src/hooks/usePaneCreation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAI5C,UAAU,MAAM;IACd,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,SAAS,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACxC,gBAAgB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,gBAAgB,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,MAAM;2CACjH,MAAM,aAAa,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI;qCAqB5C,MAAM,UAAU,QAAQ,GAAG,UAAU;EAyH3E"}
1
+ {"version":3,"file":"usePaneCreation.d.ts","sourceRoot":"","sources":["../../src/hooks/usePaneCreation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAG5C,UAAU,MAAM;IACd,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,SAAS,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACxC,gBAAgB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,gBAAgB,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAC,CAAC;CAC/C;AAED,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,SAAS,EAAE,SAAS,EAAE,eAAe,EAAE,EAAE,MAAM;2CAClI,MAAM,aAAa,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI;qCAqB5C,MAAM,UAAU,QAAQ,GAAG,UAAU;EA4E3E"}
@@ -1,8 +1,7 @@
1
1
  import { execSync } from 'child_process';
2
2
  import path from 'path';
3
- import { applySmartLayout } from '../utils/tmux.js';
4
- import { generateSlug } from '../utils/slug.js';
5
- export default function usePaneCreation({ panes, savePanes, projectName, setIsCreatingPane, setStatusMessage, setNewPanePrompt, loadPanes, panesFile }) {
3
+ import { createPane } from '../utils/paneCreation.js';
4
+ export default function usePaneCreation({ panes, savePanes, projectName, setIsCreatingPane, setStatusMessage, setNewPanePrompt, loadPanes, panesFile, availableAgents }) {
6
5
  const openInEditor = async (currentPrompt, setPrompt) => {
7
6
  try {
8
7
  const os = await import('os');
@@ -28,17 +27,7 @@ export default function usePaneCreation({ panes, savePanes, projectName, setIsCr
28
27
  const createNewPane = async (prompt, agent) => {
29
28
  setIsCreatingPane(true);
30
29
  setStatusMessage('Generating slug...');
31
- const slug = await generateSlug(prompt);
32
- setStatusMessage(`Creating worktree: ${slug}...`);
33
- let projectRoot;
34
- try {
35
- projectRoot = execSync('git rev-parse --show-toplevel', { encoding: 'utf-8', stdio: 'pipe' }).trim();
36
- }
37
- catch {
38
- projectRoot = process.cwd();
39
- }
40
- const worktreePath = path.join(projectRoot, '.dmux', 'worktrees', slug);
41
- const originalPaneId = execSync('tmux display-message -p "#{pane_id}"', { encoding: 'utf-8' }).trim();
30
+ // Clear the screen before creating pane
42
31
  process.stdout.write('\x1b[2J\x1b[H');
43
32
  process.stdout.write('\n'.repeat(100));
44
33
  try {
@@ -51,100 +40,57 @@ export default function usePaneCreation({ panes, savePanes, projectName, setIsCr
51
40
  execSync('tmux refresh-client', { stdio: 'pipe' });
52
41
  }
53
42
  catch { }
54
- const paneCount = parseInt(execSync('tmux list-panes | wc -l', { encoding: 'utf-8' }).trim());
55
43
  try {
56
- execSync(`tmux set-option -g pane-border-status top`, { stdio: 'pipe' });
57
- }
58
- catch { }
59
- const paneInfo = execSync(`tmux split-window -h -P -F '#{pane_id}'`, { encoding: 'utf-8' }).trim();
60
- await new Promise(r => setTimeout(r, 500));
61
- try {
62
- execSync(`tmux select-pane -t '${paneInfo}' -T "${slug}"`, { stdio: 'pipe' });
63
- }
64
- catch { }
65
- applySmartLayout(paneCount + 1);
66
- try {
67
- const worktreeCmd = `git worktree add "${worktreePath}" -b ${slug} 2>/dev/null ; cd "${worktreePath}"`;
68
- execSync(`tmux send-keys -t '${paneInfo}' '${worktreeCmd}' Enter`, { stdio: 'pipe' });
69
- await new Promise(r => setTimeout(r, 2500));
70
- execSync(`tmux send-keys -t '${paneInfo}' 'echo "Worktree created at:" && pwd' Enter`, { stdio: 'pipe' });
44
+ // Use the shared pane creation utility
45
+ const result = await createPane({
46
+ prompt,
47
+ agent,
48
+ projectName,
49
+ existingPanes: panes,
50
+ }, availableAgents);
51
+ if (result.needsAgentChoice) {
52
+ // This shouldn't happen in the TUI flow since we handle agent choice
53
+ // before calling createNewPane, but just in case
54
+ setStatusMessage('Agent choice is required');
55
+ setIsCreatingPane(false);
56
+ return;
57
+ }
58
+ // Update status as we go
59
+ setStatusMessage(`Creating worktree: ${result.pane.slug}...`);
71
60
  await new Promise(r => setTimeout(r, 500));
72
61
  setStatusMessage(agent ? `Worktree created, launching ${agent === 'opencode' ? 'opencode' : 'Claude'}...` : 'Worktree created.');
73
- }
74
- catch (error) {
75
- setStatusMessage(`Warning: Worktree issue: ${error}`);
76
- execSync(`tmux send-keys -t '${paneInfo}' 'cd "${worktreePath}" 2>/dev/null || (echo "ERROR: Failed to create/enter worktree ${slug}" && pwd)' Enter`, { stdio: 'pipe' });
77
- await new Promise(r => setTimeout(r, 1000));
78
- }
79
- let escapedCmd = '';
80
- if (agent === 'claude') {
81
- let claudeCmd;
82
- if (prompt && prompt.trim()) {
83
- const escapedPrompt = prompt.replace(/\\/g, '\\\\').replace(/"/g, '\\"').replace(/`/g, '\\`').replace(/\$/g, '\\$');
84
- claudeCmd = `claude "${escapedPrompt}" --permission-mode=acceptEdits`;
85
- }
86
- else {
87
- claudeCmd = `claude --permission-mode=acceptEdits`;
88
- }
89
- escapedCmd = claudeCmd.replace(/'/g, "'\\''");
90
- execSync(`tmux send-keys -t '${paneInfo}' '${escapedCmd}'`, { stdio: 'pipe' });
91
- execSync(`tmux send-keys -t '${paneInfo}' Enter`, { stdio: 'pipe' });
92
- }
93
- else if (agent === 'opencode') {
94
- const openCoderCmd = `opencode`;
95
- const escapedOpenCmd = openCoderCmd.replace(/'/g, "'\\''");
96
- execSync(`tmux send-keys -t '${paneInfo}' '${escapedOpenCmd}'`, { stdio: 'pipe' });
97
- execSync(`tmux send-keys -t '${paneInfo}' Enter`, { stdio: 'pipe' });
98
- if (prompt && prompt.trim()) {
99
- await new Promise(r => setTimeout(r, 1500));
100
- const bufName = `dmux_prompt_${Date.now()}`;
101
- const promptEsc = prompt.replace(/\\/g, '\\\\').replace(/'/g, "'\\''");
102
- execSync(`tmux set-buffer -b '${bufName}' -- '${promptEsc}'`, { stdio: 'pipe' });
103
- execSync(`tmux paste-buffer -b '${bufName}' -t '${paneInfo}'`, { stdio: 'pipe' });
104
- await new Promise(r => setTimeout(r, 200));
105
- execSync(`tmux delete-buffer -b '${bufName}'`, { stdio: 'pipe' });
106
- execSync(`tmux send-keys -t '${paneInfo}' Enter`, { stdio: 'pipe' });
62
+ // Save the pane
63
+ const updatedPanes = [...panes, result.pane];
64
+ await savePanes(updatedPanes);
65
+ // Validate the pane was saved by checking the config
66
+ await new Promise(r => setTimeout(r, 100));
67
+ try {
68
+ const fs = await import('fs');
69
+ const configContent = await fs.promises.readFile(panesFile, 'utf-8');
70
+ const config = JSON.parse(configContent);
71
+ const savedPanes = Array.isArray(config) ? config : config.panes || [];
72
+ const paneExists = savedPanes.some((p) => p.id === result.pane.id);
73
+ if (!paneExists) {
74
+ console.error('Warning: Pane not found in config after save, retrying...');
75
+ await savePanes(updatedPanes);
76
+ }
107
77
  }
108
- }
109
- execSync(`tmux select-pane -t '${paneInfo}'`, { stdio: 'pipe' });
110
- const newPane = {
111
- id: `dmux-${Date.now()}`,
112
- slug,
113
- prompt: prompt ? (prompt.substring(0, 50) + (prompt.length > 50 ? '...' : '')) : 'No initial prompt',
114
- paneId: paneInfo,
115
- worktreePath,
116
- agent,
117
- };
118
- const updatedPanes = [...panes, newPane];
119
- await savePanes(updatedPanes);
120
- // Validate the pane was saved by checking the config
121
- // This helps catch race conditions
122
- await new Promise(r => setTimeout(r, 100)); // Small delay to ensure write completes
123
- try {
124
- const fs = await import('fs');
125
- const configContent = await fs.promises.readFile(panesFile, 'utf-8');
126
- const config = JSON.parse(configContent);
127
- const savedPanes = Array.isArray(config) ? config : config.panes || [];
128
- const paneExists = savedPanes.some((p) => p.id === newPane.id);
129
- if (!paneExists) {
130
- // Retry the save if pane wasn't found
131
- console.error('Warning: Pane not found in config after save, retrying...');
132
- await savePanes(updatedPanes);
78
+ catch (error) {
79
+ console.error('Warning: Could not validate pane save:', error);
133
80
  }
81
+ // Clear screen again
82
+ process.stdout.write('\x1b[2J\x1b[H');
83
+ setIsCreatingPane(false);
84
+ setStatusMessage('');
85
+ setNewPanePrompt('');
86
+ await loadPanes();
134
87
  }
135
88
  catch (error) {
136
- console.error('Warning: Could not validate pane save:', error);
137
- }
138
- execSync(`tmux select-pane -t '${originalPaneId}'`, { stdio: 'pipe' });
139
- try {
140
- execSync(`tmux select-pane -t '${originalPaneId}' -T "dmux-${projectName}"`, { stdio: 'pipe' });
89
+ console.error('Failed to create pane:', error);
90
+ setStatusMessage(`Failed to create pane: ${error}`);
91
+ setIsCreatingPane(false);
92
+ setTimeout(() => setStatusMessage(''), 3000);
141
93
  }
142
- catch { }
143
- process.stdout.write('\x1b[2J\x1b[H');
144
- setIsCreatingPane(false);
145
- setStatusMessage('');
146
- setNewPanePrompt('');
147
- await loadPanes();
148
94
  };
149
95
  return { openInEditor, createNewPane };
150
96
  }
@@ -1 +1 @@
1
- {"version":3,"file":"usePaneCreation.js","sourceRoot":"","sources":["../../src/hooks/usePaneCreation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"usePaneCreation.js","sourceRoot":"","sources":["../../src/hooks/usePaneCreation.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"usePanes.d.ts","sourceRoot":"","sources":["../../src/hooks/usePanes.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AA4C5C,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO;;;;;mCAsMnC,QAAQ,EAAE;EA8D9C"}
1
+ {"version":3,"file":"usePanes.d.ts","sourceRoot":"","sources":["../../src/hooks/usePanes.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AA4C5C,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO;;;;;mCAwMnC,QAAQ,EAAE;EA8D9C"}
@@ -37,6 +37,7 @@ async function withWriteLock(operation) {
37
37
  export default function usePanes(panesFile, skipLoading) {
38
38
  const [panes, setPanes] = useState([]);
39
39
  const [isLoading, setIsLoading] = useState(true);
40
+ const [initialLoadComplete, setInitialLoadComplete] = useState(false);
40
41
  const loadPanes = async () => {
41
42
  if (skipLoading)
42
43
  return;
@@ -92,9 +93,9 @@ export default function usePanes(panesFile, skipLoading) {
92
93
  }
93
94
  return p;
94
95
  });
95
- // Only attempt to recreate missing panes on initial load
96
- // This prevents disruptive recreation during regular polling
97
- const missingPanes = (allPaneIds.length > 0 && panes.length === 0)
96
+ // Only attempt to recreate missing panes on initial load AND only if not already completed
97
+ // This prevents disruptive recreation during regular polling and race conditions with pane closing
98
+ const missingPanes = (allPaneIds.length > 0 && panes.length === 0 && !initialLoadComplete)
98
99
  ? reboundPanes.filter(pane => !allPaneIds.includes(pane.paneId))
99
100
  : [];
100
101
  // Recreate missing panes (only on initial load)
@@ -178,6 +179,7 @@ export default function usePanes(panesFile, skipLoading) {
178
179
  catch { }
179
180
  });
180
181
  setPanes(activePanes);
182
+ setInitialLoadComplete(true);
181
183
  return; // Exit early for initial load
182
184
  }
183
185
  // For subsequent loads, check if any pane IDs were remapped
@@ -1 +1 @@
1
- {"version":3,"file":"usePanes.js","sourceRoot":"","sources":["../../src/hooks/usePanes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"usePanes.js","sourceRoot":"","sources":["../../src/hooks/usePanes.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTerminalWidth.d.ts","sourceRoot":"","sources":["../../src/hooks/useTerminalWidth.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,gBAAgB,WAYvC"}
1
+ {"version":3,"file":"useTerminalWidth.d.ts","sourceRoot":"","sources":["../../src/hooks/useTerminalWidth.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,UAAU,gBAAgB,WA+BvC"}