dmux 5.1.0 → 5.3.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 (319) hide show
  1. package/README.md +46 -143
  2. package/dist/DmuxApp.d.ts.map +1 -1
  3. package/dist/DmuxApp.js +99 -56
  4. package/dist/DmuxApp.js.map +1 -1
  5. package/dist/actions/implementations/closeAction.d.ts.map +1 -1
  6. package/dist/actions/implementations/closeAction.js +55 -21
  7. package/dist/actions/implementations/closeAction.js.map +1 -1
  8. package/dist/actions/implementations/index.d.ts +1 -0
  9. package/dist/actions/implementations/index.d.ts.map +1 -1
  10. package/dist/actions/implementations/index.js +3 -0
  11. package/dist/actions/implementations/index.js.map +1 -1
  12. package/dist/actions/implementations/mergeAction.d.ts.map +1 -1
  13. package/dist/actions/implementations/mergeAction.js +61 -20
  14. package/dist/actions/implementations/mergeAction.js.map +1 -1
  15. package/dist/actions/index.d.ts.map +1 -1
  16. package/dist/actions/index.js +6 -0
  17. package/dist/actions/index.js.map +1 -1
  18. package/dist/actions/merge/conflictResolution.d.ts.map +1 -1
  19. package/dist/actions/merge/conflictResolution.js +19 -13
  20. package/dist/actions/merge/conflictResolution.js.map +1 -1
  21. package/dist/actions/merge/issueHandlers/mainDirtyHandler.d.ts.map +1 -1
  22. package/dist/actions/merge/issueHandlers/mainDirtyHandler.js +8 -6
  23. package/dist/actions/merge/issueHandlers/mainDirtyHandler.js.map +1 -1
  24. package/dist/actions/merge/issueHandlers/worktreeUncommittedHandler.d.ts +1 -1
  25. package/dist/actions/merge/issueHandlers/worktreeUncommittedHandler.d.ts.map +1 -1
  26. package/dist/actions/merge/issueHandlers/worktreeUncommittedHandler.js +9 -2
  27. package/dist/actions/merge/issueHandlers/worktreeUncommittedHandler.js.map +1 -1
  28. package/dist/actions/merge/mergeExecution.d.ts.map +1 -1
  29. package/dist/actions/merge/mergeExecution.js +2 -1
  30. package/dist/actions/merge/mergeExecution.js.map +1 -1
  31. package/dist/actions/merge/multiMergeOrchestrator.d.ts.map +1 -1
  32. package/dist/actions/merge/multiMergeOrchestrator.js +33 -14
  33. package/dist/actions/merge/multiMergeOrchestrator.js.map +1 -1
  34. package/dist/actions/types.d.ts +4 -2
  35. package/dist/actions/types.d.ts.map +1 -1
  36. package/dist/actions/types.js +19 -1
  37. package/dist/actions/types.js.map +1 -1
  38. package/dist/components/dialogs/AgentChoiceDialog.d.ts +2 -1
  39. package/dist/components/dialogs/AgentChoiceDialog.d.ts.map +1 -1
  40. package/dist/components/dialogs/AgentChoiceDialog.js +4 -5
  41. package/dist/components/dialogs/AgentChoiceDialog.js.map +1 -1
  42. package/dist/components/dialogs/SettingsDialog.d.ts.map +1 -1
  43. package/dist/components/dialogs/SettingsDialog.js +3 -1
  44. package/dist/components/dialogs/SettingsDialog.js.map +1 -1
  45. package/dist/components/panes/MergePane.d.ts +1 -0
  46. package/dist/components/panes/MergePane.d.ts.map +1 -1
  47. package/dist/components/panes/MergePane.js +14 -3
  48. package/dist/components/panes/MergePane.js.map +1 -1
  49. package/dist/components/panes/PaneCard.d.ts +1 -3
  50. package/dist/components/panes/PaneCard.d.ts.map +1 -1
  51. package/dist/components/panes/PaneCard.js +54 -37
  52. package/dist/components/panes/PaneCard.js.map +1 -1
  53. package/dist/components/panes/PanesGrid.d.ts +1 -0
  54. package/dist/components/panes/PanesGrid.d.ts.map +1 -1
  55. package/dist/components/panes/PanesGrid.js +60 -78
  56. package/dist/components/panes/PanesGrid.js.map +1 -1
  57. package/dist/components/popups/agentChoicePopup.d.ts +2 -2
  58. package/dist/components/popups/agentChoicePopup.js +85 -56
  59. package/dist/components/popups/agentChoicePopup.js.map +1 -1
  60. package/dist/components/popups/diffPeekPopup.d.ts +7 -0
  61. package/dist/components/popups/diffPeekPopup.d.ts.map +1 -0
  62. package/dist/components/popups/diffPeekPopup.js +99 -0
  63. package/dist/components/popups/diffPeekPopup.js.map +1 -0
  64. package/dist/components/popups/enabledAgentsPopup.d.ts +7 -0
  65. package/dist/components/popups/enabledAgentsPopup.d.ts.map +1 -0
  66. package/dist/components/popups/enabledAgentsPopup.js +196 -0
  67. package/dist/components/popups/enabledAgentsPopup.js.map +1 -0
  68. package/dist/components/popups/kebabMenuPopup.js +2 -2
  69. package/dist/components/popups/kebabMenuPopup.js.map +1 -1
  70. package/dist/components/popups/mergeUncommittedChoicePopup.d.ts +7 -0
  71. package/dist/components/popups/mergeUncommittedChoicePopup.d.ts.map +1 -0
  72. package/dist/components/popups/mergeUncommittedChoicePopup.js +289 -0
  73. package/dist/components/popups/mergeUncommittedChoicePopup.js.map +1 -0
  74. package/dist/components/popups/newPanePopup.js +8 -0
  75. package/dist/components/popups/newPanePopup.js.map +1 -1
  76. package/dist/components/popups/projectSelectPopup.d.ts +7 -0
  77. package/dist/components/popups/projectSelectPopup.d.ts.map +1 -0
  78. package/dist/components/popups/projectSelectPopup.js +124 -0
  79. package/dist/components/popups/projectSelectPopup.js.map +1 -0
  80. package/dist/components/popups/reopenWorktreePopup.js +33 -3
  81. package/dist/components/popups/reopenWorktreePopup.js.map +1 -1
  82. package/dist/components/popups/settingsPopup.js +25 -8
  83. package/dist/components/popups/settingsPopup.js.map +1 -1
  84. package/dist/components/popups/shared/DirectoryList.d.ts +14 -0
  85. package/dist/components/popups/shared/DirectoryList.d.ts.map +1 -0
  86. package/dist/components/popups/shared/DirectoryList.js +46 -0
  87. package/dist/components/popups/shared/DirectoryList.js.map +1 -0
  88. package/dist/components/popups/shared/index.d.ts +1 -0
  89. package/dist/components/popups/shared/index.d.ts.map +1 -1
  90. package/dist/components/popups/shared/index.js +1 -0
  91. package/dist/components/popups/shared/index.js.map +1 -1
  92. package/dist/components/popups/shortcutsPopup.js +15 -12
  93. package/dist/components/popups/shortcutsPopup.js.map +1 -1
  94. package/dist/components/popups/singleAgentChoicePopup.d.ts +7 -0
  95. package/dist/components/popups/singleAgentChoicePopup.d.ts.map +1 -0
  96. package/dist/components/popups/singleAgentChoicePopup.js +95 -0
  97. package/dist/components/popups/singleAgentChoicePopup.js.map +1 -0
  98. package/dist/components/ui/FooterHelp.js +1 -1
  99. package/dist/components/ui/FooterHelp.js.map +1 -1
  100. package/dist/hooks/useActionSystem.d.ts +1 -1
  101. package/dist/hooks/useActionSystem.d.ts.map +1 -1
  102. package/dist/hooks/useActionSystem.js +1 -1
  103. package/dist/hooks/useActionSystem.js.map +1 -1
  104. package/dist/hooks/useAgentDetection.d.ts +2 -2
  105. package/dist/hooks/useAgentDetection.d.ts.map +1 -1
  106. package/dist/hooks/useAgentDetection.js +18 -88
  107. package/dist/hooks/useAgentDetection.js.map +1 -1
  108. package/dist/hooks/useAutoUpdater.d.ts.map +1 -1
  109. package/dist/hooks/useAutoUpdater.js +43 -26
  110. package/dist/hooks/useAutoUpdater.js.map +1 -1
  111. package/dist/hooks/useInputHandling.d.ts +5 -0
  112. package/dist/hooks/useInputHandling.d.ts.map +1 -1
  113. package/dist/hooks/useInputHandling.js +89 -16
  114. package/dist/hooks/useInputHandling.js.map +1 -1
  115. package/dist/hooks/useNavigation.d.ts +1 -1
  116. package/dist/hooks/useNavigation.d.ts.map +1 -1
  117. package/dist/hooks/useNavigation.js +26 -4
  118. package/dist/hooks/useNavigation.js.map +1 -1
  119. package/dist/hooks/usePaneCreation.d.ts +5 -2
  120. package/dist/hooks/usePaneCreation.d.ts.map +1 -1
  121. package/dist/hooks/usePaneCreation.js +123 -23
  122. package/dist/hooks/usePaneCreation.js.map +1 -1
  123. package/dist/hooks/usePaneSync.d.ts +1 -1
  124. package/dist/hooks/usePaneSync.d.ts.map +1 -1
  125. package/dist/hooks/usePaneSync.js +14 -1
  126. package/dist/hooks/usePaneSync.js.map +1 -1
  127. package/dist/hooks/usePanes.js +1 -1
  128. package/dist/hooks/usePanes.js.map +1 -1
  129. package/dist/hooks/useServices.d.ts +1 -1
  130. package/dist/hooks/useServices.d.ts.map +1 -1
  131. package/dist/hooks/useServices.js +2 -2
  132. package/dist/hooks/useServices.js.map +1 -1
  133. package/dist/hooks/useWorktreeActions.d.ts.map +1 -1
  134. package/dist/hooks/useWorktreeActions.js +16 -8
  135. package/dist/hooks/useWorktreeActions.js.map +1 -1
  136. package/dist/index.js +199 -18
  137. package/dist/index.js.map +1 -1
  138. package/dist/layout/SpacerManager.d.ts.map +1 -1
  139. package/dist/layout/SpacerManager.js +2 -1
  140. package/dist/layout/SpacerManager.js.map +1 -1
  141. package/dist/server/embedded-assets.d.ts.map +1 -1
  142. package/dist/server/embedded-assets.js +37 -26
  143. package/dist/server/embedded-assets.js.map +1 -1
  144. package/dist/services/AutoUpdater.d.ts +4 -0
  145. package/dist/services/AutoUpdater.d.ts.map +1 -1
  146. package/dist/services/AutoUpdater.js +23 -0
  147. package/dist/services/AutoUpdater.js.map +1 -1
  148. package/dist/services/PaneEventService.d.ts.map +1 -1
  149. package/dist/services/PaneEventService.js +2 -5
  150. package/dist/services/PaneEventService.js.map +1 -1
  151. package/dist/services/PaneWorkerManager.d.ts.map +1 -1
  152. package/dist/services/PaneWorkerManager.js +2 -14
  153. package/dist/services/PaneWorkerManager.js.map +1 -1
  154. package/dist/services/PopupManager.d.ts +8 -2
  155. package/dist/services/PopupManager.d.ts.map +1 -1
  156. package/dist/services/PopupManager.js +149 -27
  157. package/dist/services/PopupManager.js.map +1 -1
  158. package/dist/services/TmuxService.d.ts +15 -1
  159. package/dist/services/TmuxService.d.ts.map +1 -1
  160. package/dist/services/TmuxService.js +29 -3
  161. package/dist/services/TmuxService.js.map +1 -1
  162. package/dist/services/WorktreeCleanupService.d.ts +22 -0
  163. package/dist/services/WorktreeCleanupService.d.ts.map +1 -0
  164. package/dist/services/WorktreeCleanupService.js +80 -0
  165. package/dist/services/WorktreeCleanupService.js.map +1 -0
  166. package/dist/types.d.ts +9 -3
  167. package/dist/types.d.ts.map +1 -1
  168. package/dist/utils/agentDetection.d.ts +15 -8
  169. package/dist/utils/agentDetection.d.ts.map +1 -1
  170. package/dist/utils/agentDetection.js +49 -73
  171. package/dist/utils/agentDetection.js.map +1 -1
  172. package/dist/utils/agentLaunch.d.ts +63 -1
  173. package/dist/utils/agentLaunch.d.ts.map +1 -1
  174. package/dist/utils/agentLaunch.js +497 -24
  175. package/dist/utils/agentLaunch.js.map +1 -1
  176. package/dist/utils/agentPromptDispatch.d.ts +33 -0
  177. package/dist/utils/agentPromptDispatch.d.ts.map +1 -0
  178. package/dist/utils/agentPromptDispatch.js +99 -0
  179. package/dist/utils/agentPromptDispatch.js.map +1 -0
  180. package/dist/utils/asciiArt.d.ts.map +1 -1
  181. package/dist/utils/asciiArt.js +6 -7
  182. package/dist/utils/asciiArt.js.map +1 -1
  183. package/dist/utils/attachAgent.d.ts +21 -0
  184. package/dist/utils/attachAgent.d.ts.map +1 -0
  185. package/dist/utils/attachAgent.js +128 -0
  186. package/dist/utils/attachAgent.js.map +1 -0
  187. package/dist/utils/conflictResolutionPane.d.ts +2 -1
  188. package/dist/utils/conflictResolutionPane.d.ts.map +1 -1
  189. package/dist/utils/conflictResolutionPane.js +69 -36
  190. package/dist/utils/conflictResolutionPane.js.map +1 -1
  191. package/dist/utils/devSource.d.ts +7 -0
  192. package/dist/utils/devSource.d.ts.map +1 -0
  193. package/dist/utils/devSource.js +19 -0
  194. package/dist/utils/devSource.js.map +1 -0
  195. package/dist/utils/devWatchCommand.d.ts +8 -0
  196. package/dist/utils/devWatchCommand.d.ts.map +1 -0
  197. package/dist/utils/devWatchCommand.js +14 -0
  198. package/dist/utils/devWatchCommand.js.map +1 -0
  199. package/dist/utils/dirScanner.d.ts +30 -0
  200. package/dist/utils/dirScanner.d.ts.map +1 -0
  201. package/dist/utils/dirScanner.js +99 -0
  202. package/dist/utils/dirScanner.js.map +1 -0
  203. package/dist/utils/geminiTrust.d.ts +8 -0
  204. package/dist/utils/geminiTrust.d.ts.map +1 -0
  205. package/dist/utils/geminiTrust.js +67 -0
  206. package/dist/utils/geminiTrust.js.map +1 -0
  207. package/dist/utils/generated-agents-doc.d.ts +1 -1
  208. package/dist/utils/generated-agents-doc.js +3 -3
  209. package/dist/utils/git.d.ts +13 -0
  210. package/dist/utils/git.d.ts.map +1 -1
  211. package/dist/utils/git.js +20 -0
  212. package/dist/utils/git.js.map +1 -1
  213. package/dist/utils/hooks.js +1 -1
  214. package/dist/utils/hooks.js.map +1 -1
  215. package/dist/utils/hooksDocs.d.ts +2 -9
  216. package/dist/utils/hooksDocs.d.ts.map +1 -1
  217. package/dist/utils/hooksDocs.js +26 -6
  218. package/dist/utils/hooksDocs.js.map +1 -1
  219. package/dist/utils/mergeExecution.d.ts.map +1 -1
  220. package/dist/utils/mergeExecution.js +6 -3
  221. package/dist/utils/mergeExecution.js.map +1 -1
  222. package/dist/utils/paneCreation.d.ts +8 -2
  223. package/dist/utils/paneCreation.d.ts.map +1 -1
  224. package/dist/utils/paneCreation.js +129 -80
  225. package/dist/utils/paneCreation.js.map +1 -1
  226. package/dist/utils/paneGrouping.d.ts.map +1 -1
  227. package/dist/utils/paneGrouping.js +30 -0
  228. package/dist/utils/paneGrouping.js.map +1 -1
  229. package/dist/utils/projectActions.d.ts +5 -0
  230. package/dist/utils/projectActions.d.ts.map +1 -1
  231. package/dist/utils/projectActions.js +15 -4
  232. package/dist/utils/projectActions.js.map +1 -1
  233. package/dist/utils/promptStore.d.ts +7 -0
  234. package/dist/utils/promptStore.d.ts.map +1 -0
  235. package/dist/utils/promptStore.js +75 -0
  236. package/dist/utils/promptStore.js.map +1 -0
  237. package/dist/utils/reopenWorktree.d.ts +1 -1
  238. package/dist/utils/reopenWorktree.d.ts.map +1 -1
  239. package/dist/utils/reopenWorktree.js +26 -27
  240. package/dist/utils/reopenWorktree.js.map +1 -1
  241. package/dist/utils/runtimePaths.d.ts +2 -0
  242. package/dist/utils/runtimePaths.d.ts.map +1 -0
  243. package/dist/utils/runtimePaths.js +8 -0
  244. package/dist/utils/runtimePaths.js.map +1 -0
  245. package/dist/utils/settingsManager.d.ts.map +1 -1
  246. package/dist/utils/settingsManager.js +96 -4
  247. package/dist/utils/settingsManager.js.map +1 -1
  248. package/dist/utils/systemCheck.d.ts.map +1 -1
  249. package/dist/utils/systemCheck.js +0 -13
  250. package/dist/utils/systemCheck.js.map +1 -1
  251. package/dist/utils/welcomePane.d.ts +2 -1
  252. package/dist/utils/welcomePane.d.ts.map +1 -1
  253. package/dist/utils/welcomePane.js +3 -2
  254. package/dist/utils/welcomePane.js.map +1 -1
  255. package/dist/utils/welcomePaneManager.js +1 -1
  256. package/dist/utils/welcomePaneManager.js.map +1 -1
  257. package/dist/workers/PaneWorker.js.map +1 -1
  258. package/dist/workers/WorkerMessages.d.ts +2 -1
  259. package/dist/workers/WorkerMessages.d.ts.map +1 -1
  260. package/dist/workers/WorkerMessages.js.map +1 -1
  261. package/dist/workers/updateChecker.js +21 -6
  262. package/dist/workers/updateChecker.js.map +1 -1
  263. package/package.json +14 -12
  264. package/dist/components/popups/remotePopup.d.ts +0 -6
  265. package/dist/components/popups/remotePopup.d.ts.map +0 -1
  266. package/dist/components/popups/remotePopup.js +0 -166
  267. package/dist/components/popups/remotePopup.js.map +0 -1
  268. package/dist/hooks/useTunnelManagement.d.ts +0 -18
  269. package/dist/hooks/useTunnelManagement.d.ts.map +0 -1
  270. package/dist/hooks/useTunnelManagement.js +0 -55
  271. package/dist/hooks/useTunnelManagement.js.map +0 -1
  272. package/dist/server/actionsApi.d.ts +0 -37
  273. package/dist/server/actionsApi.d.ts.map +0 -1
  274. package/dist/server/actionsApi.js +0 -256
  275. package/dist/server/actionsApi.js.map +0 -1
  276. package/dist/server/index.d.ts +0 -21
  277. package/dist/server/index.d.ts.map +0 -1
  278. package/dist/server/index.js +0 -100
  279. package/dist/server/index.js.map +0 -1
  280. package/dist/server/routes/actionsRoutes.d.ts +0 -2
  281. package/dist/server/routes/actionsRoutes.d.ts.map +0 -1
  282. package/dist/server/routes/actionsRoutes.js +0 -110
  283. package/dist/server/routes/actionsRoutes.js.map +0 -1
  284. package/dist/server/routes/healthRoutes.d.ts +0 -13
  285. package/dist/server/routes/healthRoutes.d.ts.map +0 -1
  286. package/dist/server/routes/healthRoutes.js +0 -70
  287. package/dist/server/routes/healthRoutes.js.map +0 -1
  288. package/dist/server/routes/index.d.ts +0 -8
  289. package/dist/server/routes/index.d.ts.map +0 -1
  290. package/dist/server/routes/index.js +0 -67
  291. package/dist/server/routes/index.js.map +0 -1
  292. package/dist/server/routes/keysRoutes.d.ts +0 -33
  293. package/dist/server/routes/keysRoutes.d.ts.map +0 -1
  294. package/dist/server/routes/keysRoutes.js +0 -128
  295. package/dist/server/routes/keysRoutes.js.map +0 -1
  296. package/dist/server/routes/panesRoutes.d.ts +0 -2
  297. package/dist/server/routes/panesRoutes.d.ts.map +0 -1
  298. package/dist/server/routes/panesRoutes.js +0 -414
  299. package/dist/server/routes/panesRoutes.js.map +0 -1
  300. package/dist/server/routes/settingsRoutes.d.ts +0 -94
  301. package/dist/server/routes/settingsRoutes.d.ts.map +0 -1
  302. package/dist/server/routes/settingsRoutes.js +0 -159
  303. package/dist/server/routes/settingsRoutes.js.map +0 -1
  304. package/dist/server/routes/streamRoutes.d.ts +0 -18
  305. package/dist/server/routes/streamRoutes.d.ts.map +0 -1
  306. package/dist/server/routes/streamRoutes.js +0 -87
  307. package/dist/server/routes/streamRoutes.js.map +0 -1
  308. package/dist/server/routes/tunnelRoutes.d.ts +0 -11
  309. package/dist/server/routes/tunnelRoutes.d.ts.map +0 -1
  310. package/dist/server/routes/tunnelRoutes.js +0 -28
  311. package/dist/server/routes/tunnelRoutes.js.map +0 -1
  312. package/dist/server/routes.d.ts +0 -17
  313. package/dist/server/routes.d.ts.map +0 -1
  314. package/dist/server/routes.js +0 -17
  315. package/dist/server/routes.js.map +0 -1
  316. package/dist/services/TunnelService.d.ts +0 -10
  317. package/dist/services/TunnelService.d.ts.map +0 -1
  318. package/dist/services/TunnelService.js +0 -98
  319. package/dist/services/TunnelService.js.map +0 -1
package/README.md CHANGED
@@ -2,176 +2,79 @@
2
2
  <img src="./dmux.png" alt="dmux logo" width="400" />
3
3
  </p>
4
4
 
5
- # dmux - AI-Powered tmux Development Sessions
5
+ <h3 align="center">Parallel agents with tmux and worktrees</h3>
6
6
 
7
- Tools for running agents in parallel are too complex. `dmux` makes running parallel development agents like Claude Code, Codex, or opencode very simple. It's a simple tool that creates a new tmux pane, a new git worktree, and launches your chosen agent in that worktree, with AI powered branch naming and commit messages.
8
-
9
- `dmux` lets you merge the open panes back into your main branch easily, close failed experiments, and spin up more agents quickly.
10
-
11
- ![dmux demo](./screen.gif)
12
-
13
- ## Features
14
-
15
- - **🚀 Parallel Development**: Work on multiple features simultaneously in separate panes
16
- - **🌳 Git Worktree Integration**: Each pane operates in its own isolated git worktree
17
- - **🤖 AI-Powered**: Automatic branch naming and commit message generation
18
- - **🎯 Agent Integration**: Launch Claude Code, Codex, or OpenCode with prompts
19
- - **🧪 A/B Agent Launches**: Start two agents at once from the same prompt for side-by-side experimentation
20
- - **📦 Project Isolation**: Each project gets its own tmux session
21
- - **🔄 Smart Merging**: One-command merge workflow with automatic cleanup
7
+ <p align="center">
8
+ Manage multiple AI coding agents in isolated git worktrees.<br/>
9
+ Branch, develop, and merge &mdash; all in parallel.
10
+ </p>
22
11
 
23
- ## Prerequisites
12
+ <p align="center">
13
+ <a href="https://dmux.ai"><strong>Documentation</strong></a> &nbsp;&middot;&nbsp;
14
+ <a href="https://dmux.ai#getting-started"><strong>Getting Started</strong></a> &nbsp;&middot;&nbsp;
15
+ <a href="https://github.com/formkit/dmux/issues"><strong>Issues</strong></a>
16
+ </p>
24
17
 
25
- - **tmux** 3.0 or higher
26
- - **Node.js** 18 or higher
27
- - **Git** 2.20 or higher (with worktree support)
28
- - **Agent CLI**: Claude Code (`claude`), Codex (`codex`), or OpenCode (`opencode`)
29
- - **OpenRouter API Key** (optional but recommended for AI features)
18
+ ---
30
19
 
31
- ## Installation
20
+ <img src="./dmux.gif" alt="dmux demo" width="100%" />
32
21
 
33
- ### 1. Install dmux
22
+ ## Install
34
23
 
35
24
  ```bash
36
25
  npm install -g dmux
37
26
  ```
38
27
 
39
- ### 2. Enable AI Features
40
-
41
- On first run, dmux onboarding can:
42
- - suggest/install a recommended tmux config preset if you do not have one
43
- - prompt for your OpenRouter API key and save it to your shell config automatically
44
-
45
- You can also set it manually for AI-powered branch naming and commit messages:
28
+ ## Quick Start
46
29
 
47
30
  ```bash
48
- # Add to your ~/.bashrc or ~/.zshrc
49
- export OPENROUTER_API_KEY="your-api-key-here"
31
+ cd /path/to/your/project
32
+ dmux
50
33
  ```
51
34
 
52
- Get your API key from [OpenRouter](https://openrouter.ai/).
53
-
54
- ## Quick Start
35
+ Press `n` to create a new pane, type a prompt, pick one or more agents (or none for a plain terminal), and dmux handles the rest &mdash; worktree, branch, and agent launch.
55
36
 
56
- ### Basic Usage
37
+ ## What it does
57
38
 
58
- 1. **Start dmux in your project**
59
- ```bash
60
- cd /path/to/your/project
61
- dmux
62
- ```
63
- If you run `dmux` from a different repo while already inside a `dmux-*` tmux session, dmux will prompt to add that repo into the current session.
39
+ dmux creates a tmux pane for each task. Every pane gets its own git worktree and branch so agents work in complete isolation. When a task is done, press `m` to merge it back into your main branch.
64
40
 
65
- 2. **Create a new development pane**
66
- - Press `n` or select "+ New dmux pane"
67
- - Enter an optional prompt like "fix authentication bug"
68
- - Choose one agent, or an A/B pair (for example Claude Code + Codex)
69
- - dmux launches one pane per selected agent, each with its own worktree
70
-
71
- 3. **Navigate between panes**
72
- - Use `↑/↓` arrows to select panes
73
- - Press `j` or `Enter` to jump to a pane
74
-
75
- 4. **Merge your work**
76
- - Select the pane you want to merge
77
- - Press `m` to merge into main branch
78
- - Confirm to close the pane
41
+ - **Worktree isolation** &mdash; each pane is a full working copy, no conflicts between agents
42
+ - **Agent support** &mdash; Claude Code, Codex, OpenCode, Cline CLI, Gemini CLI, Qwen CLI, Amp CLI, pi CLI, Cursor CLI, Copilot CLI, and Crush CLI
43
+ - **Multi-select launches** &mdash; choose any combination of enabled agents per prompt
44
+ - **AI naming** &mdash; branches and commit messages generated automatically
45
+ - **Smart merging** &mdash; auto-commit, merge, and clean up in one step
46
+ - **Multi-project** &mdash; add multiple repos to the same session
47
+ - **Lifecycle hooks** &mdash; run scripts on worktree create, pre-merge, post-merge, and more
79
48
 
80
49
  ## Keyboard Shortcuts
81
50
 
82
51
  | Key | Action |
83
52
  |-----|--------|
84
- | `↑/↓` | Navigate pane list |
85
- | `Enter` or `j` | Jump to selected pane |
86
- | `n` | Create new dmux pane (main project) |
87
- | `t` | Create terminal pane (main project) |
88
- | `p` | Create pane in another project |
89
- | `N` | Create pane in another project (legacy) |
90
- | `m` | Merge worktree to main |
91
- | `x` | Close selected pane |
92
- | `q` | Quit dmux interface |
93
- | `ESC` | Cancel current dialog |
53
+ | `n` | New pane (worktree + agent) |
54
+ | `t` | New terminal pane |
55
+ | `j` / `Enter` | Jump to pane |
56
+ | `m` | Merge pane to main |
57
+ | `x` | Close pane |
58
+ | `p` | New pane in another project |
59
+ | `s` | Settings |
60
+ | `q` | Quit |
94
61
 
95
- ## Project structure
62
+ ## Requirements
96
63
 
97
- When using git worktrees, its helpful to have your project's main source code in a "main" directory. Worktrees are then checked out as siblings of the main directory.
64
+ - tmux 3.0+
65
+ - Node.js 18+
66
+ - Git 2.20+
67
+ - At least one supported agent CLI (for example [Claude Code](https://docs.anthropic.com/en/docs/claude-code), [Codex](https://github.com/openai/codex), [OpenCode](https://github.com/opencode-ai/opencode), [Cline CLI](https://docs.cline.bot/cline-cli/getting-started), [Gemini CLI](https://github.com/google-gemini/gemini-cli), [Qwen CLI](https://github.com/QwenLM/qwen-code), [Amp CLI](https://ampcode.com/manual), [pi CLI](https://www.npmjs.com/package/@mariozechner/pi-coding-agent), [Cursor CLI](https://docs.cursor.com/en/cli/overview), [Copilot CLI](https://github.com/github/copilot-cli), [Crush CLI](https://github.com/charmbracelet/crush))
68
+ - [OpenRouter API key](https://openrouter.ai/) (optional, for AI branch names and commit messages)
98
69
 
99
- ```bash
100
- # Start dmux in your project
101
- cd ~/projects/my-app/main
102
- dmux
70
+ ## Documentation
103
71
 
104
- # Create a pane for a new feature
105
- # Press 'n', enter: "add user dashboard"
106
- # The agent opens with your prompt
72
+ Full documentation is available at **[dmux.ai](https://dmux.ai)**, including setup guides, configuration, and hooks.
107
73
 
108
- # Create another pane for a bug fix
109
- # Press 'n', enter: "fix memory leak"
110
- # Work on both simultaneously
111
-
112
- # When feature is complete
113
- # Select the pane, press 'm' to merge
114
-
115
- # Jump between panes as needed
116
- # Press 'j' on any pane to switch focus
117
- ```
118
-
119
- ## How It Works
120
-
121
- 1. **Session Management**: Each project gets its own tmux session (`dmux-projectname`)
122
- 2. **Worktree Creation**: New panes create git worktrees in sibling directories
123
- 3. **Branch Management**: Automatic branch creation with AI-generated names
124
- 4. **Agent Integration**: Launches Claude with `--accept-edits`, or starts opencode and submits your prompt automatically
125
- 5. **Smart Merging**: Auto-commits, generates messages, and cleans up worktrees
126
-
127
- ## tmux Configuration for Beginners
128
-
129
- While dmux handles most tmux operations automatically, having a good tmux configuration can enhance your experience. This isn't the place to learn tmux comprehensively, but here's a helpful configuration to get you started.
130
-
131
- ### A simple tmux configuration
132
-
133
- If you aren't a heavy tmux user, consider creating this to your `~/.tmux.conf` file:
134
-
135
- ```bash
136
- # Visual distinction between active and inactive panes
137
- set -g window-style 'fg=colour247,bg=colour236'
138
- set -g window-active-style 'fg=default,bg=colour234'
139
-
140
- # Pane borders
141
- set -g pane-border-style "fg=colour238 bg=default"
142
- set -g pane-active-border-style "fg=blue bg=default"
143
-
144
- # Status bar styling
145
- set -g status-style 'bg=colour236'
146
-
147
- # Keyboard shortcuts for pane navigation
148
- # Hold Ctrl+Shift and use arrow keys to move between panes
149
- bind -n C-S-Left select-pane -L
150
- bind -n C-S-Right select-pane -R
151
- bind -n C-S-Up select-pane -U
152
- bind -n C-S-Down select-pane -D
153
-
154
- # Enable mouse support (click panes, resize with mouse)
155
- set -g mouse on
156
- ```
157
-
158
- ### Key Features of This Configuration
159
-
160
- - **Visual Feedback**: Active panes have a darker background and blue border
161
- - **Easy Navigation**: Hold `Ctrl+Shift` and use arrow keys to switch between panes instantly
162
- - **Mouse Support**: Click on panes to focus them, drag borders to resize
163
-
164
- After adding this configuration, reload tmux:
165
- ```bash
166
- tmux source-file ~/.tmux.conf
167
- ```
74
+ ## Contributing
168
75
 
169
- Or start a new tmux session for the changes to take effect.
76
+ See **[CONTRIBUTING.md](./CONTRIBUTING.md)** for the recommended local "dmux-on-dmux" development loop, hook setup, and PR workflow.
170
77
 
171
- ## Requirements Summary
78
+ ## License
172
79
 
173
- - tmux ≥ 3.0
174
- - Node.js ≥ 18
175
- - Git ≥ 2.20
176
- - Claude Code or opencode CLI (at least one)
177
- - OpenRouter API key (optional)
80
+ MIT
@@ -1 +1 @@
1
- {"version":3,"file":"DmuxApp.d.ts","sourceRoot":"","sources":["../src/DmuxApp.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAA;AAiD3D,OAAO,KAAK,EAEV,YAAY,EACb,MAAM,YAAY,CAAA;AAenB,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CA41BnC,CAAA;AAED,eAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"DmuxApp.d.ts","sourceRoot":"","sources":["../src/DmuxApp.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAA;AAiD3D,OAAO,KAAK,EAEV,YAAY,EACb,MAAM,YAAY,CAAA;AAiBnB,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAg6BnC,CAAA;AAED,eAAe,OAAO,CAAA"}
package/dist/DmuxApp.js CHANGED
@@ -7,7 +7,6 @@ import useProjectSettings from "./hooks/useProjectSettings.js";
7
7
  import useTerminalWidth from "./hooks/useTerminalWidth.js";
8
8
  import useNavigation from "./hooks/useNavigation.js";
9
9
  import useAutoUpdater from "./hooks/useAutoUpdater.js";
10
- import useAgentDetection from "./hooks/useAgentDetection.js";
11
10
  import useAgentStatus from "./hooks/useAgentStatus.js";
12
11
  import usePaneRunner from "./hooks/usePaneRunner.js";
13
12
  import usePaneCreation from "./hooks/usePaneCreation.js";
@@ -28,9 +27,10 @@ import { useServices } from "./hooks/useServices.js";
28
27
  import { PaneLifecycleManager } from "./services/PaneLifecycleManager.js";
29
28
  import { reopenWorktree } from "./utils/reopenWorktree.js";
30
29
  import { fileURLToPath } from "url";
31
- import { dirname } from "path";
32
- import { getAgentSlugSuffix, } from "./utils/agentLaunch.js";
33
- import { generateSlug } from "./utils/slug.js";
30
+ import { dirname, resolve as resolvePath } from "path";
31
+ import { resolveEnabledAgentsSelection, } from "./utils/agentLaunch.js";
32
+ import { resolveNextDevSourcePath } from "./utils/devSource.js";
33
+ import { buildDevWatchRespawnCommand } from "./utils/devWatchCommand.js";
34
34
  const __filename = fileURLToPath(import.meta.url);
35
35
  const __dirname = dirname(__filename);
36
36
  import PanesGrid from "./components/panes/PanesGrid.js";
@@ -42,10 +42,12 @@ import UpdatingIndicator from "./components/indicators/UpdatingIndicator.js";
42
42
  import FooterHelp from "./components/ui/FooterHelp.js";
43
43
  import TmuxHooksPromptDialog from "./components/dialogs/TmuxHooksPromptDialog.js";
44
44
  import { PaneEventService } from "./services/PaneEventService.js";
45
- import { buildProjectActionLayout, buildVisualNavigationRows, } from "./utils/projectActions.js";
45
+ import { buildProjectActionLayout, buildVisualNavigationRows, buildGroupStartRows, } from "./utils/projectActions.js";
46
+ import { getPaneProjectRoot } from "./utils/paneProject.js";
46
47
  const DmuxApp = ({ panesFile, projectName, sessionName, settingsFile, projectRoot, autoUpdater, controlPaneId, }) => {
47
48
  const { stdout } = useStdout();
48
49
  const terminalHeight = stdout?.rows || 40;
50
+ const isDevMode = process.env.DMUX_DEV === "true";
49
51
  /* panes state moved to usePanes */
50
52
  const [selectedIndex, setSelectedIndex] = useState(0);
51
53
  const { statusMessage, setStatusMessage } = useStatusMessages();
@@ -63,9 +65,9 @@ const DmuxApp = ({ panesFile, projectName, sessionName, settingsFile, projectRoo
63
65
  const { exit } = useApp();
64
66
  // Flag to ignore input temporarily after popup closes (prevents buffered keys)
65
67
  const [ignoreInput, setIgnoreInput] = useState(false);
66
- // Agent selection state
67
- const { availableAgents } = useAgentDetection();
68
- const [agentChoice, setAgentChoice] = useState(null);
68
+ // Agent selection is settings-driven.
69
+ // Installation checks are performed lazily in the Enabled Agents settings popup.
70
+ const availableAgents = resolveEnabledAgentsSelection(settingsManager.getSettings().enabledAgents);
69
71
  // Popup support detection
70
72
  const [popupsSupported, setPopupsSupported] = useState(false);
71
73
  // Track terminal dimensions for responsive layout
@@ -150,7 +152,7 @@ const DmuxApp = ({ panesFile, projectName, sessionName, settingsFile, projectRoo
150
152
  });
151
153
  // Spinner animation and branch detection now handled in hooks
152
154
  // Pane creation
153
- const { createNewPane: createNewPaneHook } = usePaneCreation({
155
+ const { createNewPane: createNewPaneHook, createPanesForAgents: createPanesForAgentsHook, } = usePaneCreation({
154
156
  panes,
155
157
  savePanes,
156
158
  projectName,
@@ -167,10 +169,10 @@ const DmuxApp = ({ panesFile, projectName, sessionName, settingsFile, projectRoo
167
169
  sidebarWidth: SIDEBAR_WIDTH,
168
170
  projectRoot: projectRoot || process.cwd(),
169
171
  popupsSupported,
172
+ isDevMode,
170
173
  terminalWidth,
171
174
  terminalHeight,
172
175
  availableAgents,
173
- agentChoice,
174
176
  settingsManager,
175
177
  projectSettings,
176
178
  // Callbacks
@@ -281,12 +283,6 @@ const DmuxApp = ({ panesFile, projectName, sessionName, settingsFile, projectRoo
281
283
  };
282
284
  }, []);
283
285
  // Update checking moved to useAutoUpdater
284
- // Set default agent choice when detection completes
285
- useEffect(() => {
286
- if (agentChoice == null && availableAgents.length > 0) {
287
- setAgentChoice(availableAgents[0] || "claude");
288
- }
289
- }, [availableAgents]);
290
286
  // Welcome pane is now fully event-based:
291
287
  // - Created at startup (in src/index.ts)
292
288
  // - Destroyed when first pane is created (in paneCreation.ts)
@@ -295,12 +291,14 @@ const DmuxApp = ({ panesFile, projectName, sessionName, settingsFile, projectRoo
295
291
  // loadPanes moved to usePanes
296
292
  // getPanePositions moved to utils/tmux
297
293
  const sessionProjectRoot = projectRoot || process.cwd();
294
+ const activeDevSourcePath = isDevMode ? process.cwd() : undefined;
298
295
  const projectActionLayout = useMemo(() => buildProjectActionLayout(panes, sessionProjectRoot, projectName), [panes, sessionProjectRoot, projectName]);
299
296
  const navigationRows = useMemo(() => isLoading
300
297
  ? projectActionLayout.groups.flatMap((group) => group.panes.map((entry) => [entry.index]))
301
298
  : buildVisualNavigationRows(projectActionLayout), [isLoading, projectActionLayout]);
299
+ const groupStartRows = useMemo(() => isLoading ? [] : buildGroupStartRows(projectActionLayout), [isLoading, projectActionLayout]);
302
300
  // Navigation logic moved to hook
303
- const { getCardGridPosition, findCardInDirection } = useNavigation(navigationRows);
301
+ const { getCardGridPosition, findCardInDirection } = useNavigation(navigationRows, groupStartRows);
304
302
  // findCardInDirection provided by useNavigation
305
303
  // savePanes moved to usePanes
306
304
  // applySmartLayout moved to utils/tmux
@@ -308,45 +306,30 @@ const DmuxApp = ({ panesFile, projectName, sessionName, settingsFile, projectRoo
308
306
  const handlePaneCreationWithAgent = async (prompt, targetProjectRoot) => {
309
307
  const agents = availableAgents;
310
308
  const createPanesForAgents = async (selectedAgents) => {
311
- const dedupedAgents = selectedAgents.filter((agent, index) => selectedAgents.indexOf(agent) === index);
312
- let panesForCreation = panes;
313
- const isMultiLaunch = dedupedAgents.length > 1;
314
- const slugBase = isMultiLaunch ? await generateSlug(prompt) : undefined;
315
- for (const selectedAgent of dedupedAgents) {
316
- const pane = await createNewPaneHook(prompt, selectedAgent, {
317
- existingPanes: panesForCreation,
318
- slugSuffix: isMultiLaunch
319
- ? getAgentSlugSuffix(selectedAgent)
320
- : undefined,
321
- slugBase,
322
- targetProjectRoot,
323
- });
324
- if (!pane) {
325
- return;
326
- }
327
- panesForCreation = [...panesForCreation, pane];
328
- }
309
+ await createPanesForAgentsHook(prompt, selectedAgents, {
310
+ existingPanes: panes,
311
+ targetProjectRoot,
312
+ });
329
313
  };
330
314
  if (agents.length === 0) {
331
- await createNewPaneHook(prompt, undefined, { targetProjectRoot });
315
+ await createNewPaneHook(prompt, undefined, {
316
+ targetProjectRoot,
317
+ skipAgentSelection: true,
318
+ });
319
+ return;
332
320
  }
333
- else if (agents.length === 1) {
334
- await createPanesForAgents([agents[0]]);
321
+ // Always show the checklist when at least one enabled agent exists.
322
+ // This preserves the "select none for terminal" behavior consistently.
323
+ const selectedAgents = await popupManager.launchAgentChoicePopup();
324
+ if (selectedAgents === null) {
325
+ return;
335
326
  }
336
- else {
337
- // Multiple agents available - check for default agent setting first
338
- const settings = settingsManager.getSettings();
339
- if (settings.defaultAgent && agents.includes(settings.defaultAgent)) {
340
- await createPanesForAgents([settings.defaultAgent]);
341
- }
342
- else {
343
- // Show agent choice popup
344
- const selectedAgents = await popupManager.launchAgentChoicePopup();
345
- if (selectedAgents && selectedAgents.length > 0) {
346
- await createPanesForAgents(selectedAgents);
347
- }
348
- }
327
+ if (selectedAgents.length === 0) {
328
+ setStatusMessage("Select at least one agent");
329
+ setTimeout(() => setStatusMessage(""), STATUS_MESSAGE_DURATION_SHORT);
330
+ return;
349
331
  }
332
+ await createPanesForAgents(selectedAgents);
350
333
  };
351
334
  // Helper function to reopen a closed worktree
352
335
  const handleReopenWorktree = async (slug, worktreePath, targetProjectRoot) => {
@@ -377,6 +360,39 @@ const DmuxApp = ({ panesFile, projectName, sessionName, settingsFile, projectRoo
377
360
  setIsCreatingPane(false);
378
361
  }
379
362
  };
363
+ const restartDevSessionAtSource = async (sourcePath) => {
364
+ if (!isDevMode)
365
+ return;
366
+ const tmuxService = TmuxService.getInstance();
367
+ const sourcePaneId = controlPaneId || await tmuxService.getCurrentPaneId();
368
+ await tmuxService.respawnPane(sourcePaneId, buildDevWatchRespawnCommand(sourcePath));
369
+ };
370
+ const handleSetDevSourceFromPane = async (pane) => {
371
+ if (!isDevMode) {
372
+ setStatusMessage("Source switching is only available in dev mode");
373
+ setTimeout(() => setStatusMessage(""), STATUS_MESSAGE_DURATION_SHORT);
374
+ return;
375
+ }
376
+ if (!pane.worktreePath) {
377
+ setStatusMessage("Selected pane has no worktree path");
378
+ setTimeout(() => setStatusMessage(""), STATUS_MESSAGE_DURATION_SHORT);
379
+ return;
380
+ }
381
+ const paneProjectRoot = getPaneProjectRoot(pane, sessionProjectRoot);
382
+ if (paneProjectRoot !== sessionProjectRoot) {
383
+ setStatusMessage("Source can only be set from panes in this project");
384
+ setTimeout(() => setStatusMessage(""), STATUS_MESSAGE_DURATION_SHORT);
385
+ return;
386
+ }
387
+ const nextSource = resolveNextDevSourcePath(pane.worktreePath, resolvePath(process.cwd()), resolvePath(sessionProjectRoot));
388
+ if (nextSource.toggledToRoot) {
389
+ setStatusMessage("Switching source to project root...");
390
+ await restartDevSessionAtSource(nextSource.nextSourcePath);
391
+ return;
392
+ }
393
+ setStatusMessage(`Switching source to "${pane.slug}"...`);
394
+ await restartDevSessionAtSource(nextSource.nextSourcePath);
395
+ };
380
396
  // Helper function to handle action results recursively
381
397
  const handleActionResult = async (result) => {
382
398
  // Handle ActionResults from background callbacks (e.g., conflict resolution completion)
@@ -403,7 +419,7 @@ const DmuxApp = ({ panesFile, projectName, sessionName, settingsFile, projectRoo
403
419
  else if (result.type === "choice") {
404
420
  if (!result.options || !result.onSelect)
405
421
  return;
406
- const selectedId = await popupManager.launchChoicePopup(result.title || "Choose Option", result.message, result.options);
422
+ const selectedId = await popupManager.launchChoicePopup(result.title || "Choose Option", result.message, result.options, result.data);
407
423
  if (selectedId) {
408
424
  const nextResult = await result.onSelect(selectedId);
409
425
  // Recursively handle nested results
@@ -457,11 +473,25 @@ const DmuxApp = ({ panesFile, projectName, sessionName, settingsFile, projectRoo
457
473
  onPaneRemove: async (paneId) => {
458
474
  // Mark pane as closing to prevent race condition with worker
459
475
  await lifecycleManager.beginClose(paneId, 'user requested');
476
+ // Adjust selectedIndex before removing from list
477
+ const removedIndex = panes.findIndex((p) => p.paneId === paneId);
478
+ if (removedIndex >= 0 && selectedIndex >= panes.length - 1) {
479
+ setSelectedIndex(Math.max(0, panes.length - 2));
480
+ }
460
481
  // Remove from panes list
461
482
  const updatedPanes = panes.filter((p) => p.paneId !== paneId);
462
483
  savePanes(updatedPanes);
463
484
  // Mark close as completed (no more lock needed)
464
485
  await lifecycleManager.completeClose(paneId);
486
+ // Return focus to control pane
487
+ if (controlPaneId) {
488
+ try {
489
+ await TmuxService.getInstance().selectPane(controlPaneId);
490
+ }
491
+ catch {
492
+ // Ignore - control pane might not exist
493
+ }
494
+ }
465
495
  },
466
496
  onActionResult: handleActionResult,
467
497
  popupLaunchers: popupsSupported
@@ -506,6 +536,12 @@ const DmuxApp = ({ panesFile, projectName, sessionName, settingsFile, projectRoo
506
536
  // Remove it from our tracking
507
537
  const updatedPanes = panes.filter((p) => p.id !== paneId);
508
538
  savePanes(updatedPanes);
539
+ const removedPane = panes.find((p) => p.id === paneId);
540
+ if (isDevMode &&
541
+ removedPane?.worktreePath &&
542
+ removedPane.worktreePath === process.cwd()) {
543
+ void restartDevSessionAtSource(sessionProjectRoot);
544
+ }
509
545
  },
510
546
  });
511
547
  // jumpToPane and runCommand functions removed - now handled by action system and pane runner
@@ -579,6 +615,7 @@ const DmuxApp = ({ panesFile, projectName, sessionName, settingsFile, projectRoo
579
615
  isUpdating,
580
616
  isLoading,
581
617
  ignoreInput: ignoreInput || showHooksPrompt, // Block other input when hooks prompt is shown
618
+ isDevMode,
582
619
  quitConfirmMode,
583
620
  setQuitConfirmMode,
584
621
  showCommandPrompt,
@@ -600,9 +637,12 @@ const DmuxApp = ({ panesFile, projectName, sessionName, settingsFile, projectRoo
600
637
  runCommandInternal,
601
638
  handlePaneCreationWithAgent,
602
639
  handleReopenWorktree,
640
+ setDevSourceFromPane: handleSetDevSourceFromPane,
603
641
  savePanes,
604
642
  loadPanes,
605
643
  cleanExit,
644
+ availableAgents,
645
+ panesFile,
606
646
  projectRoot: sessionProjectRoot,
607
647
  projectActionItems: projectActionLayout.actionItems,
608
648
  findCardInDirection,
@@ -639,7 +679,7 @@ const DmuxApp = ({ panesFile, projectName, sessionName, settingsFile, projectRoo
639
679
  footerLines += 1;
640
680
  }
641
681
  // Add status line
642
- if (updateAvailable || currentBranch || debugMessage) {
682
+ if (isDevMode || updateAvailable || currentBranch || debugMessage) {
643
683
  footerLines += 1;
644
684
  }
645
685
  // Add line for each active status message
@@ -653,7 +693,7 @@ const DmuxApp = ({ panesFile, projectName, sessionName, settingsFile, projectRoo
653
693
  const contentHeight = Math.max(terminalHeight - footerLines, 10);
654
694
  return (React.createElement(Box, { flexDirection: "column", height: terminalHeight },
655
695
  React.createElement(Box, { flexDirection: "column", height: contentHeight, overflow: "hidden" },
656
- React.createElement(PanesGrid, { panes: panes, selectedIndex: selectedIndex, isLoading: isLoading, agentStatuses: agentStatuses, fallbackProjectRoot: projectRoot || process.cwd(), fallbackProjectName: projectName }),
696
+ React.createElement(PanesGrid, { panes: panes, selectedIndex: selectedIndex, isLoading: isLoading, agentStatuses: agentStatuses, activeDevSourcePath: activeDevSourcePath, fallbackProjectRoot: projectRoot || process.cwd(), fallbackProjectName: projectName }),
657
697
  isLoading && React.createElement(LoadingIndicator, null),
658
698
  showCommandPrompt && (React.createElement(CommandPromptDialog, { type: showCommandPrompt, value: commandInput, onChange: setCommandInput })),
659
699
  showFileCopyPrompt && React.createElement(FileCopyPrompt, null),
@@ -676,12 +716,15 @@ const DmuxApp = ({ panesFile, projectName, sessionName, settingsFile, projectRoo
676
716
  const pos = getCardGridPosition(selectedIndex);
677
717
  return `Grid: ${cols} cols × ${rows} rows | Selected: row ${pos.row}, col ${pos.col} | Terminal: ${terminalWidth}w`;
678
718
  })() }),
679
- (updateAvailable || currentBranch || debugMessage) && (React.createElement(Text, { dimColor: true },
719
+ (isDevMode || updateAvailable || currentBranch || debugMessage) && (React.createElement(Text, { dimColor: true },
720
+ isDevMode && (React.createElement(Text, { color: "yellow", bold: true },
721
+ "DEV MODE",
722
+ " ")),
680
723
  updateAvailable && updateInfo && (React.createElement(Text, { color: "red", bold: true },
681
724
  "Update available: npm i -g dmux@latest",
682
725
  " ")),
683
726
  currentBranch && (React.createElement(Text, { color: "magenta" },
684
- "dev: ",
727
+ "source: ",
685
728
  currentBranch)),
686
729
  debugMessage && React.createElement(Text, { dimColor: true },
687
730
  " \u2022 ",
@@ -1 +1 @@
1
- {"version":3,"file":"DmuxApp.js","sourceRoot":"","sources":["../src/DmuxApp.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DmuxApp.js","sourceRoot":"","sources":["../src/DmuxApp.tsx"],"names":[],"mappings":"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"}