tmux-ide 2.1.5 → 2.6.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 (805) hide show
  1. package/README.md +115 -101
  2. package/bin/cli.js +13678 -4
  3. package/bin/cli.ts +1143 -260
  4. package/package.json +27 -17
  5. package/packages/daemon/dist/__tests__/support.d.ts +7 -0
  6. package/packages/daemon/dist/__tests__/support.js +33 -0
  7. package/packages/daemon/dist/agent-explain.d.ts +45 -0
  8. package/packages/daemon/dist/agent-explain.js +210 -0
  9. package/packages/daemon/dist/attach.d.ts +3 -0
  10. package/packages/daemon/dist/attach.js +14 -0
  11. package/packages/daemon/dist/bin.d.ts +2 -0
  12. package/packages/daemon/dist/bin.js +3 -0
  13. package/packages/daemon/dist/canonical.d.ts +2 -0
  14. package/packages/daemon/dist/canonical.js +1 -0
  15. package/packages/daemon/dist/cli.d.ts +1 -0
  16. package/packages/daemon/dist/cli.js +425 -0
  17. package/packages/daemon/dist/command-center/actions/contract.d.ts +1 -0
  18. package/packages/daemon/dist/command-center/actions/contract.js +2 -0
  19. package/packages/daemon/dist/command-center/actions/dispatcher.d.ts +27 -0
  20. package/packages/daemon/dist/command-center/actions/dispatcher.js +109 -0
  21. package/packages/daemon/dist/command-center/actions/errors.d.ts +38 -0
  22. package/packages/daemon/dist/command-center/actions/errors.js +56 -0
  23. package/packages/daemon/dist/command-center/actions/handlers/_project-context.d.ts +12 -0
  24. package/packages/daemon/dist/command-center/actions/handlers/_project-context.js +12 -0
  25. package/packages/daemon/dist/command-center/actions/handlers/_resolve-project.d.ts +42 -0
  26. package/packages/daemon/dist/command-center/actions/handlers/_resolve-project.js +48 -0
  27. package/packages/daemon/dist/command-center/actions/handlers/app-set-remote-access.d.ts +23 -0
  28. package/packages/daemon/dist/command-center/actions/handlers/app-set-remote-access.js +67 -0
  29. package/packages/daemon/dist/command-center/actions/handlers/config-actions.d.ts +12 -0
  30. package/packages/daemon/dist/command-center/actions/handlers/config-actions.js +69 -0
  31. package/packages/daemon/dist/command-center/actions/handlers/daemon-shutdown.d.ts +6 -0
  32. package/packages/daemon/dist/command-center/actions/handlers/daemon-shutdown.js +24 -0
  33. package/packages/daemon/dist/command-center/actions/handlers/project-activate.d.ts +7 -0
  34. package/packages/daemon/dist/command-center/actions/handlers/project-activate.js +19 -0
  35. package/packages/daemon/dist/command-center/actions/handlers/project-launch.d.ts +18 -0
  36. package/packages/daemon/dist/command-center/actions/handlers/project-launch.js +58 -0
  37. package/packages/daemon/dist/command-center/actions/handlers/project-open-terminal.d.ts +32 -0
  38. package/packages/daemon/dist/command-center/actions/handlers/project-open-terminal.js +69 -0
  39. package/packages/daemon/dist/command-center/actions/handlers/project-restart.d.ts +17 -0
  40. package/packages/daemon/dist/command-center/actions/handlers/project-restart.js +27 -0
  41. package/packages/daemon/dist/command-center/actions/handlers/project-stop.d.ts +24 -0
  42. package/packages/daemon/dist/command-center/actions/handlers/project-stop.js +38 -0
  43. package/packages/daemon/dist/command-center/actions/handlers/terminal-respawn.d.ts +24 -0
  44. package/packages/daemon/dist/command-center/actions/handlers/terminal-respawn.js +88 -0
  45. package/packages/daemon/dist/command-center/actions/handlers/terminal-stop.d.ts +14 -0
  46. package/packages/daemon/dist/command-center/actions/handlers/terminal-stop.js +22 -0
  47. package/packages/daemon/dist/command-center/actions/registry.d.ts +35 -0
  48. package/packages/daemon/dist/command-center/actions/registry.js +109 -0
  49. package/packages/daemon/dist/command-center/discovery.d.ts +23 -0
  50. package/packages/daemon/dist/command-center/discovery.js +67 -0
  51. package/packages/daemon/dist/command-center/index.d.ts +10 -0
  52. package/packages/daemon/dist/command-center/index.js +21 -0
  53. package/packages/daemon/dist/command-center/schemas.d.ts +76 -0
  54. package/packages/daemon/dist/command-center/schemas.js +68 -0
  55. package/packages/daemon/dist/command-center/server.d.ts +26 -0
  56. package/packages/daemon/dist/command-center/server.js +1103 -0
  57. package/packages/daemon/dist/command-center/ws-events.d.ts +59 -0
  58. package/packages/daemon/dist/command-center/ws-events.js +277 -0
  59. package/packages/daemon/dist/config.d.ts +19 -0
  60. package/packages/daemon/dist/config.js +494 -0
  61. package/packages/daemon/dist/detect.d.ts +15 -0
  62. package/packages/daemon/dist/detect.js +228 -0
  63. package/packages/daemon/dist/doctor.d.ts +21 -0
  64. package/packages/daemon/dist/doctor.js +154 -0
  65. package/packages/daemon/dist/embed.d.ts +1 -0
  66. package/packages/daemon/dist/embed.js +1 -0
  67. package/packages/daemon/dist/index.d.ts +3 -0
  68. package/packages/daemon/dist/index.js +2 -0
  69. package/packages/daemon/dist/init.d.ts +4 -0
  70. package/packages/daemon/dist/init.js +174 -0
  71. package/packages/daemon/dist/inspect.d.ts +54 -0
  72. package/packages/daemon/dist/inspect.js +118 -0
  73. package/packages/daemon/dist/launch.d.ts +23 -0
  74. package/packages/daemon/dist/launch.js +250 -0
  75. package/packages/daemon/dist/lib/active-projects.d.ts +12 -0
  76. package/packages/daemon/dist/lib/active-projects.js +35 -0
  77. package/packages/daemon/dist/lib/agent-discovery.d.ts +43 -0
  78. package/packages/daemon/dist/lib/agent-discovery.js +85 -0
  79. package/packages/daemon/dist/lib/app-config.d.ts +147 -0
  80. package/packages/daemon/dist/lib/app-config.js +191 -0
  81. package/packages/daemon/dist/lib/app-settings.d.ts +9 -0
  82. package/packages/daemon/dist/lib/app-settings.js +44 -0
  83. package/packages/daemon/dist/lib/auth/auth-service.d.ts +33 -0
  84. package/packages/daemon/dist/lib/auth/auth-service.js +172 -0
  85. package/packages/daemon/dist/lib/auth/middleware.d.ts +16 -0
  86. package/packages/daemon/dist/lib/auth/middleware.js +43 -0
  87. package/packages/daemon/dist/lib/auth/types.d.ts +1 -0
  88. package/packages/daemon/dist/lib/auth/types.js +2 -0
  89. package/packages/daemon/dist/lib/auth-token.d.ts +1 -0
  90. package/packages/daemon/dist/lib/auth-token.js +4 -0
  91. package/packages/daemon/dist/lib/authorship.d.ts +62 -0
  92. package/packages/daemon/dist/lib/authorship.js +209 -0
  93. package/packages/daemon/dist/lib/canonical-daemon.d.ts +21 -0
  94. package/packages/daemon/dist/lib/canonical-daemon.js +111 -0
  95. package/packages/daemon/dist/lib/cli-action-bridge.d.ts +27 -0
  96. package/packages/daemon/dist/lib/cli-action-bridge.js +161 -0
  97. package/packages/daemon/dist/lib/daemon-embed.d.ts +31 -0
  98. package/packages/daemon/dist/lib/daemon-embed.js +643 -0
  99. package/packages/daemon/dist/lib/daemon-watchdog.d.ts +16 -0
  100. package/packages/daemon/dist/lib/daemon-watchdog.js +98 -0
  101. package/packages/daemon/dist/lib/daemon.d.ts +8 -0
  102. package/packages/daemon/dist/lib/daemon.js +79 -0
  103. package/packages/daemon/dist/lib/dot-path.d.ts +2 -0
  104. package/packages/daemon/dist/lib/dot-path.js +17 -0
  105. package/packages/daemon/dist/lib/errors.d.ts +37 -0
  106. package/packages/daemon/dist/lib/errors.js +50 -0
  107. package/packages/daemon/dist/lib/filesystem-browser.d.ts +85 -0
  108. package/packages/daemon/dist/lib/filesystem-browser.js +257 -0
  109. package/packages/daemon/dist/lib/launch-plan.d.ts +6 -0
  110. package/packages/daemon/dist/lib/launch-plan.js +76 -0
  111. package/packages/daemon/dist/lib/log.d.ts +40 -0
  112. package/packages/daemon/dist/lib/log.js +86 -0
  113. package/packages/daemon/dist/lib/output.d.ts +9 -0
  114. package/packages/daemon/dist/lib/output.js +65 -0
  115. package/packages/daemon/dist/lib/project-init-runner.d.ts +46 -0
  116. package/packages/daemon/dist/lib/project-init-runner.js +117 -0
  117. package/packages/daemon/dist/lib/project-inspect.d.ts +28 -0
  118. package/packages/daemon/dist/lib/project-inspect.js +67 -0
  119. package/packages/daemon/dist/lib/project-onboard.d.ts +58 -0
  120. package/packages/daemon/dist/lib/project-onboard.js +108 -0
  121. package/packages/daemon/dist/lib/project-probe.d.ts +35 -0
  122. package/packages/daemon/dist/lib/project-probe.js +61 -0
  123. package/packages/daemon/dist/lib/project-registry.d.ts +76 -0
  124. package/packages/daemon/dist/lib/project-registry.js +230 -0
  125. package/packages/daemon/dist/lib/session-monitor.d.ts +15 -0
  126. package/packages/daemon/dist/lib/session-monitor.js +103 -0
  127. package/packages/daemon/dist/lib/session-options.d.ts +13 -0
  128. package/packages/daemon/dist/lib/session-options.js +85 -0
  129. package/packages/daemon/dist/lib/shell.d.ts +5 -0
  130. package/{src/lib/shell.ts → packages/daemon/dist/lib/shell.js} +3 -3
  131. package/packages/daemon/dist/lib/sizes.d.ts +16 -0
  132. package/packages/daemon/dist/lib/sizes.js +36 -0
  133. package/packages/daemon/dist/lib/skill-sync.d.ts +60 -0
  134. package/packages/daemon/dist/lib/skill-sync.js +128 -0
  135. package/packages/daemon/dist/lib/slugify.d.ts +4 -0
  136. package/packages/daemon/dist/lib/slugify.js +10 -0
  137. package/packages/daemon/dist/lib/terminals-store.d.ts +27 -0
  138. package/packages/daemon/dist/lib/terminals-store.js +111 -0
  139. package/packages/daemon/dist/lib/update-check.d.ts +118 -0
  140. package/packages/daemon/dist/lib/update-check.js +261 -0
  141. package/packages/daemon/dist/lib/update.d.ts +65 -0
  142. package/packages/daemon/dist/lib/update.js +141 -0
  143. package/packages/daemon/dist/lib/workspace-registry.d.ts +84 -0
  144. package/packages/daemon/dist/lib/workspace-registry.js +176 -0
  145. package/packages/daemon/dist/lib/worktree.d.ts +76 -0
  146. package/packages/daemon/dist/lib/worktree.js +207 -0
  147. package/packages/daemon/dist/lib/yaml-io.d.ts +10 -0
  148. package/packages/daemon/dist/lib/yaml-io.js +24 -0
  149. package/packages/daemon/dist/ls.d.ts +3 -0
  150. package/packages/daemon/dist/ls.js +35 -0
  151. package/packages/daemon/dist/restart.d.ts +4 -0
  152. package/packages/daemon/dist/restart.js +16 -0
  153. package/packages/daemon/dist/restore.d.ts +86 -0
  154. package/packages/daemon/dist/restore.js +406 -0
  155. package/packages/daemon/dist/schemas/domain.d.ts +1 -0
  156. package/packages/daemon/dist/schemas/domain.js +2 -0
  157. package/packages/daemon/dist/schemas/filesystem.d.ts +29 -0
  158. package/packages/daemon/dist/schemas/filesystem.js +29 -0
  159. package/packages/daemon/dist/schemas/ide-config.d.ts +1 -0
  160. package/packages/daemon/dist/schemas/ide-config.js +2 -0
  161. package/packages/daemon/dist/schemas/index.d.ts +12 -0
  162. package/packages/daemon/dist/schemas/index.js +6 -0
  163. package/packages/daemon/dist/schemas/inspect.d.ts +53 -0
  164. package/packages/daemon/dist/schemas/inspect.js +57 -0
  165. package/packages/daemon/dist/schemas/registry.d.ts +35 -0
  166. package/packages/daemon/dist/schemas/registry.js +43 -0
  167. package/packages/daemon/dist/schemas/ws-events.d.ts +72 -0
  168. package/packages/daemon/dist/schemas/ws-events.js +110 -0
  169. package/packages/daemon/dist/send.d.ts +27 -0
  170. package/packages/daemon/dist/send.js +141 -0
  171. package/packages/daemon/dist/server/index.d.ts +10 -0
  172. package/packages/daemon/dist/server/index.js +55 -0
  173. package/packages/daemon/dist/server/pty-bridge.d.ts +174 -0
  174. package/packages/daemon/dist/server/pty-bridge.js +422 -0
  175. package/packages/daemon/dist/server/standalone.d.ts +1 -0
  176. package/packages/daemon/dist/server/standalone.js +14 -0
  177. package/packages/daemon/dist/server/ws-route.d.ts +74 -0
  178. package/packages/daemon/dist/server/ws-route.js +379 -0
  179. package/packages/daemon/dist/status.d.ts +3 -0
  180. package/packages/daemon/dist/status.js +46 -0
  181. package/packages/daemon/dist/stop.d.ts +3 -0
  182. package/packages/daemon/dist/stop.js +21 -0
  183. package/packages/daemon/dist/terminal/NodePtyAdapter.d.ts +44 -0
  184. package/packages/daemon/dist/terminal/NodePtyAdapter.js +253 -0
  185. package/packages/daemon/dist/terminal/PtyAdapter.d.ts +124 -0
  186. package/packages/daemon/dist/terminal/PtyAdapter.js +43 -0
  187. package/packages/daemon/dist/terminal/__tests__/MockPtyAdapter.d.ts +77 -0
  188. package/packages/daemon/dist/terminal/__tests__/MockPtyAdapter.js +155 -0
  189. package/packages/daemon/dist/types.d.ts +2 -0
  190. package/packages/daemon/dist/types.js +1 -0
  191. package/packages/daemon/dist/validate.d.ts +4 -0
  192. package/packages/daemon/dist/validate.js +184 -0
  193. package/packages/daemon/dist/widgets/changes/index.d.ts +1 -0
  194. package/packages/daemon/dist/widgets/changes/index.jsx +575 -0
  195. package/packages/daemon/dist/widgets/config/index.d.ts +1 -0
  196. package/packages/daemon/dist/widgets/config/index.jsx +395 -0
  197. package/packages/daemon/dist/widgets/explorer/breadcrumbs.d.ts +10 -0
  198. package/packages/daemon/dist/widgets/explorer/breadcrumbs.jsx +51 -0
  199. package/packages/daemon/dist/widgets/explorer/footer.d.ts +6 -0
  200. package/packages/daemon/dist/widgets/explorer/footer.jsx +11 -0
  201. package/packages/daemon/dist/widgets/explorer/index.d.ts +1 -0
  202. package/packages/daemon/dist/widgets/explorer/index.jsx +393 -0
  203. package/packages/daemon/dist/widgets/explorer/tree-model.d.ts +13 -0
  204. package/packages/daemon/dist/widgets/explorer/tree-model.js +69 -0
  205. package/packages/daemon/dist/widgets/explorer/tree.d.ts +13 -0
  206. package/packages/daemon/dist/widgets/explorer/tree.jsx +108 -0
  207. package/packages/daemon/dist/widgets/lib/config-model.d.ts +22 -0
  208. package/packages/daemon/dist/widgets/lib/config-model.js +99 -0
  209. package/packages/daemon/dist/widgets/lib/files.d.ts +11 -0
  210. package/packages/daemon/dist/widgets/lib/files.js +76 -0
  211. package/packages/daemon/dist/widgets/lib/git.d.ts +11 -0
  212. package/packages/daemon/dist/widgets/lib/git.js +70 -0
  213. package/packages/daemon/dist/widgets/lib/grammar.d.ts +79 -0
  214. package/packages/daemon/dist/widgets/lib/grammar.js +95 -0
  215. package/packages/daemon/dist/widgets/lib/help-overlay.d.ts +19 -0
  216. package/packages/daemon/dist/widgets/lib/help-overlay.jsx +69 -0
  217. package/packages/daemon/dist/widgets/lib/pane-comms.d.ts +28 -0
  218. package/packages/daemon/dist/widgets/lib/pane-comms.js +189 -0
  219. package/packages/daemon/dist/widgets/lib/theme.d.ts +44 -0
  220. package/packages/daemon/dist/widgets/lib/theme.js +153 -0
  221. package/packages/daemon/dist/widgets/lib/watcher.d.ts +9 -0
  222. package/packages/daemon/dist/widgets/lib/watcher.js +92 -0
  223. package/packages/daemon/dist/widgets/preview/index.d.ts +1 -0
  224. package/packages/daemon/dist/widgets/preview/index.jsx +371 -0
  225. package/packages/daemon/dist/widgets/resolve.d.ts +20 -0
  226. package/packages/daemon/dist/widgets/resolve.js +100 -0
  227. package/packages/daemon/dist/widgets/setup/agent-naming.d.ts +9 -0
  228. package/packages/daemon/dist/widgets/setup/agent-naming.jsx +81 -0
  229. package/packages/daemon/dist/widgets/setup/config-tree.d.ts +13 -0
  230. package/packages/daemon/dist/widgets/setup/config-tree.jsx +203 -0
  231. package/packages/daemon/dist/widgets/setup/detect-panel.d.ts +14 -0
  232. package/{src/widgets/setup/detect-panel.tsx → packages/daemon/dist/widgets/setup/detect-panel.jsx} +16 -40
  233. package/packages/daemon/dist/widgets/setup/field-editor.d.ts +12 -0
  234. package/packages/daemon/dist/widgets/setup/field-editor.jsx +163 -0
  235. package/packages/daemon/dist/widgets/setup/footer.d.ts +17 -0
  236. package/packages/daemon/dist/widgets/setup/footer.jsx +64 -0
  237. package/packages/daemon/dist/widgets/setup/index.d.ts +1 -0
  238. package/packages/daemon/dist/widgets/setup/index.jsx +261 -0
  239. package/packages/daemon/dist/widgets/setup/layout-picker.d.ts +9 -0
  240. package/packages/daemon/dist/widgets/setup/layout-picker.jsx +69 -0
  241. package/packages/daemon/dist/widgets/setup/setup-model.d.ts +15 -0
  242. package/packages/daemon/dist/widgets/setup/setup-model.js +157 -0
  243. package/packages/daemon/dist/widgets/sidebar/index.d.ts +1 -0
  244. package/packages/daemon/dist/widgets/sidebar/index.jsx +462 -0
  245. package/scripts/build-cli.mjs +101 -0
  246. package/scripts/build-tui.mjs +58 -0
  247. package/scripts/capture-codex-traffic.mjs +195 -0
  248. package/scripts/check-src-additions.sh +74 -0
  249. package/scripts/coverage-summary.mjs +68 -0
  250. package/scripts/install-git-hooks.js +53 -0
  251. package/scripts/merge-update-manifests.mjs +58 -0
  252. package/scripts/merge-update-manifests.test.mjs +82 -0
  253. package/scripts/pack-check-run.mjs +83 -0
  254. package/scripts/postinstall.js +28 -6
  255. package/scripts/prepublish-check.mjs +44 -0
  256. package/scripts/stress-test.ts +141 -0
  257. package/scripts/verify-endpoints.sh +90 -0
  258. package/skill/SKILL.md +203 -236
  259. package/dashboard/out/404/index.html +0 -1
  260. package/dashboard/out/404.html +0 -1
  261. package/dashboard/out/__next.__PAGE__.txt +0 -9
  262. package/dashboard/out/__next._full.txt +0 -21
  263. package/dashboard/out/__next._head.txt +0 -5
  264. package/dashboard/out/__next._index.txt +0 -7
  265. package/dashboard/out/__next._tree.txt +0 -4
  266. package/dashboard/out/_next/static/BDqbxLkiJrlXDfMXNb3cK/_buildManifest.js +0 -11
  267. package/dashboard/out/_next/static/BDqbxLkiJrlXDfMXNb3cK/_clientMiddlewareManifest.json +0 -1
  268. package/dashboard/out/_next/static/BDqbxLkiJrlXDfMXNb3cK/_ssgManifest.js +0 -1
  269. package/dashboard/out/_next/static/chunks/048e2449530877e2.js +0 -1
  270. package/dashboard/out/_next/static/chunks/053c57bda6abb959.js +0 -1
  271. package/dashboard/out/_next/static/chunks/056760c6c2dd9172.js +0 -1
  272. package/dashboard/out/_next/static/chunks/06ab47357b6d3e35.js +0 -1
  273. package/dashboard/out/_next/static/chunks/0921cbe5dfd6738e.js +0 -1
  274. package/dashboard/out/_next/static/chunks/0b2599bf468cf5ea.js +0 -1
  275. package/dashboard/out/_next/static/chunks/0c012eac08ef2c4f.js +0 -1
  276. package/dashboard/out/_next/static/chunks/0c29e87fcdcffac3.js +0 -1
  277. package/dashboard/out/_next/static/chunks/0e1e98854430c693.js +0 -1
  278. package/dashboard/out/_next/static/chunks/0e24498976a88976.js +0 -1
  279. package/dashboard/out/_next/static/chunks/0e5bf11ff0b9ab90.js +0 -1
  280. package/dashboard/out/_next/static/chunks/0eae0a45ab8416c8.js +0 -1
  281. package/dashboard/out/_next/static/chunks/104797400d9d38ad.js +0 -1
  282. package/dashboard/out/_next/static/chunks/10cfcfce475f9d2d.js +0 -1
  283. package/dashboard/out/_next/static/chunks/11bac38e7cfb4ecc.js +0 -1
  284. package/dashboard/out/_next/static/chunks/120c5f6501ec3529.js +0 -1
  285. package/dashboard/out/_next/static/chunks/121fceb2b1dcd79f.js +0 -1
  286. package/dashboard/out/_next/static/chunks/13726b63e1be6b98.js +0 -1
  287. package/dashboard/out/_next/static/chunks/140c6ce631514660.js +0 -1
  288. package/dashboard/out/_next/static/chunks/1435ee3a51174c97.js +0 -1
  289. package/dashboard/out/_next/static/chunks/14dc927d2e2cca91.js +0 -1
  290. package/dashboard/out/_next/static/chunks/179c3031b292d98e.js +0 -1
  291. package/dashboard/out/_next/static/chunks/181e88957c47e5c1.js +0 -1
  292. package/dashboard/out/_next/static/chunks/18f70ba23873c432.js +0 -1
  293. package/dashboard/out/_next/static/chunks/1b58303b027fd135.js +0 -1
  294. package/dashboard/out/_next/static/chunks/1b5f49a358dcc71e.js +0 -1
  295. package/dashboard/out/_next/static/chunks/1bba44b81585099a.js +0 -1
  296. package/dashboard/out/_next/static/chunks/1bea8dee19a3e9ae.js +0 -1
  297. package/dashboard/out/_next/static/chunks/1cfad21646fc250e.js +0 -1
  298. package/dashboard/out/_next/static/chunks/1d053dc9e1e428ef.js +0 -1
  299. package/dashboard/out/_next/static/chunks/1e7d7639c6f0ee5e.js +0 -1
  300. package/dashboard/out/_next/static/chunks/1f42504ca81463f1.js +0 -1
  301. package/dashboard/out/_next/static/chunks/20c92047399305b4.js +0 -1
  302. package/dashboard/out/_next/static/chunks/214560e9514a9a4d.js +0 -1
  303. package/dashboard/out/_next/static/chunks/21d4ef106914e997.js +0 -1
  304. package/dashboard/out/_next/static/chunks/2586e83fc3dc2588.js +0 -1
  305. package/dashboard/out/_next/static/chunks/267136a09e94f5c2.js +0 -1
  306. package/dashboard/out/_next/static/chunks/271c50b329917c10.js +0 -1
  307. package/dashboard/out/_next/static/chunks/27fccecefffd88b5.js +0 -1
  308. package/dashboard/out/_next/static/chunks/28f058ed331315b6.js +0 -1
  309. package/dashboard/out/_next/static/chunks/28f704f2cc5713eb.js +0 -1
  310. package/dashboard/out/_next/static/chunks/290f67a6cd150a98.js +0 -1
  311. package/dashboard/out/_next/static/chunks/2ad12f4dcc30d30a.js +0 -1
  312. package/dashboard/out/_next/static/chunks/2b650b172078ab92.js +0 -1
  313. package/dashboard/out/_next/static/chunks/2bd91076019a6453.js +0 -1
  314. package/dashboard/out/_next/static/chunks/2e1278563a8e26be.js +0 -1
  315. package/dashboard/out/_next/static/chunks/309eb70780a3d67d.js +0 -1
  316. package/dashboard/out/_next/static/chunks/30f71950992e2307.js +0 -1
  317. package/dashboard/out/_next/static/chunks/31191873c2075784.js +0 -1
  318. package/dashboard/out/_next/static/chunks/31a790921a0c035e.js +0 -1
  319. package/dashboard/out/_next/static/chunks/34f8d7a5a06e8e32.js +0 -1
  320. package/dashboard/out/_next/static/chunks/36b3716436d9bc9d.js +0 -1
  321. package/dashboard/out/_next/static/chunks/3770b7d0ff004de3.js +0 -1
  322. package/dashboard/out/_next/static/chunks/381ab3bd4cffbf4d.js +0 -1
  323. package/dashboard/out/_next/static/chunks/38aa4eada5dcd1a4.js +0 -1
  324. package/dashboard/out/_next/static/chunks/39723132b78cb77e.js +0 -1
  325. package/dashboard/out/_next/static/chunks/399efdcc3fe56e09.js +0 -1
  326. package/dashboard/out/_next/static/chunks/3a8431a9221b0706.js +0 -1
  327. package/dashboard/out/_next/static/chunks/3a9b40810ce88cbf.js +0 -1
  328. package/dashboard/out/_next/static/chunks/3b322e3e9476ecdf.js +0 -1
  329. package/dashboard/out/_next/static/chunks/3bb14befeeb08c28.js +0 -1
  330. package/dashboard/out/_next/static/chunks/3c99637ebd462b20.js +0 -1
  331. package/dashboard/out/_next/static/chunks/3cbb9217d56459d8.js +0 -1
  332. package/dashboard/out/_next/static/chunks/3d438e0929a762f7.js +0 -1
  333. package/dashboard/out/_next/static/chunks/3e6d4834e0752f76.js +0 -2
  334. package/dashboard/out/_next/static/chunks/3e6f8cedaad4e89b.js +0 -1
  335. package/dashboard/out/_next/static/chunks/3e701259ce1b53e3.js +0 -1
  336. package/dashboard/out/_next/static/chunks/41562f7ab7c033eb.js +0 -1
  337. package/dashboard/out/_next/static/chunks/418fadd8a94e2fd7.js +0 -1
  338. package/dashboard/out/_next/static/chunks/42345437bb922e9c.js +0 -1
  339. package/dashboard/out/_next/static/chunks/434b6bd78c97b668.js +0 -1
  340. package/dashboard/out/_next/static/chunks/434febe897d33e2d.js +0 -1
  341. package/dashboard/out/_next/static/chunks/45d28707dd8ce1c1.js +0 -1
  342. package/dashboard/out/_next/static/chunks/4620a640e88cb1b7.js +0 -1
  343. package/dashboard/out/_next/static/chunks/468f8eb604502ea4.js +0 -1
  344. package/dashboard/out/_next/static/chunks/495f5cedf8afe823.js +0 -1
  345. package/dashboard/out/_next/static/chunks/49a89d1704d27740.js +0 -1
  346. package/dashboard/out/_next/static/chunks/49e5c37d15f63def.js +0 -1
  347. package/dashboard/out/_next/static/chunks/4a46ad186a8587ee.css +0 -2
  348. package/dashboard/out/_next/static/chunks/4a5c728574935d50.js +0 -1
  349. package/dashboard/out/_next/static/chunks/4b27ebd4d9304d8f.js +0 -1
  350. package/dashboard/out/_next/static/chunks/4b965aa320a9b358.js +0 -1
  351. package/dashboard/out/_next/static/chunks/4bb2da90bbe5794f.js +0 -1
  352. package/dashboard/out/_next/static/chunks/4d2f1c6f631e4b85.js +0 -1
  353. package/dashboard/out/_next/static/chunks/4d696d5a64dab42e.js +0 -1
  354. package/dashboard/out/_next/static/chunks/4f660dadb3f1e9e2.js +0 -1
  355. package/dashboard/out/_next/static/chunks/507b50d47f949333.js +0 -1
  356. package/dashboard/out/_next/static/chunks/50b1b7063bb044e2.js +0 -1
  357. package/dashboard/out/_next/static/chunks/50c0c2e3c4f02508.js +0 -1
  358. package/dashboard/out/_next/static/chunks/50d7ba9803e65b02.js +0 -1
  359. package/dashboard/out/_next/static/chunks/51535a6d4c98c7a4.js +0 -1
  360. package/dashboard/out/_next/static/chunks/526de6cc16c7dd2f.js +0 -1
  361. package/dashboard/out/_next/static/chunks/5307604f8632b3fd.js +0 -1
  362. package/dashboard/out/_next/static/chunks/5480bd722260f231.js +0 -1
  363. package/dashboard/out/_next/static/chunks/54c61c82e5f1dca5.js +0 -1
  364. package/dashboard/out/_next/static/chunks/555de6ac6bb9034c.js +0 -1
  365. package/dashboard/out/_next/static/chunks/562b89ee76a4b90c.js +0 -1
  366. package/dashboard/out/_next/static/chunks/5747f9a32edff429.js +0 -1
  367. package/dashboard/out/_next/static/chunks/57ee141430b4c05c.js +0 -1
  368. package/dashboard/out/_next/static/chunks/584c066a0837dd9a.js +0 -1
  369. package/dashboard/out/_next/static/chunks/5856aed4670a6253.js +0 -1
  370. package/dashboard/out/_next/static/chunks/58fe563414726511.js +0 -1
  371. package/dashboard/out/_next/static/chunks/5948196b2729b18c.js +0 -1
  372. package/dashboard/out/_next/static/chunks/5ab77c69e7306f97.js +0 -1
  373. package/dashboard/out/_next/static/chunks/5b3fa4c99d61611c.js +0 -1
  374. package/dashboard/out/_next/static/chunks/5cc87abaef616661.js +0 -1
  375. package/dashboard/out/_next/static/chunks/5dfa7913f99bb966.js +0 -1
  376. package/dashboard/out/_next/static/chunks/5e49b008432770f1.js +0 -1
  377. package/dashboard/out/_next/static/chunks/5e5a33dd81c45c47.js +0 -1
  378. package/dashboard/out/_next/static/chunks/5ee61bed638eb8a8.js +0 -1
  379. package/dashboard/out/_next/static/chunks/5eed557b9f45ae4a.js +0 -1
  380. package/dashboard/out/_next/static/chunks/60446823a7d30c1b.js +0 -1
  381. package/dashboard/out/_next/static/chunks/605150c490861442.js +0 -1
  382. package/dashboard/out/_next/static/chunks/609056d51c0bf332.js +0 -1
  383. package/dashboard/out/_next/static/chunks/60ec91dfeb50071b.js +0 -1
  384. package/dashboard/out/_next/static/chunks/61bc7be0bba6a33f.js +0 -1
  385. package/dashboard/out/_next/static/chunks/61f4a5c9ce23e55e.js +0 -1
  386. package/dashboard/out/_next/static/chunks/63aae3585be04e65.js +0 -1
  387. package/dashboard/out/_next/static/chunks/64e0e1ee7ef4f01b.js +0 -1
  388. package/dashboard/out/_next/static/chunks/66e9b4c26ff1aaaf.js +0 -1
  389. package/dashboard/out/_next/static/chunks/67068847aa1b5e98.js +0 -1
  390. package/dashboard/out/_next/static/chunks/68d7de1f2e202c26.js +0 -1
  391. package/dashboard/out/_next/static/chunks/698ca3ea1937ba4f.js +0 -1
  392. package/dashboard/out/_next/static/chunks/69eb97c24b5b6b9d.js +0 -1
  393. package/dashboard/out/_next/static/chunks/6b1ac098c228a479.js +0 -1
  394. package/dashboard/out/_next/static/chunks/6bb8020cb796bcc1.js +0 -1
  395. package/dashboard/out/_next/static/chunks/6cf8b1db17f2a155.js +0 -1
  396. package/dashboard/out/_next/static/chunks/6e7613643906ea88.js +0 -1
  397. package/dashboard/out/_next/static/chunks/6ea27ceb2e6feae5.js +0 -1
  398. package/dashboard/out/_next/static/chunks/6f95a8dbcf23dded.js +0 -1
  399. package/dashboard/out/_next/static/chunks/6fd44e759d82f64e.js +0 -1
  400. package/dashboard/out/_next/static/chunks/716ec29c268c38f6.js +0 -1
  401. package/dashboard/out/_next/static/chunks/717b399dfcf7c02c.js +0 -1
  402. package/dashboard/out/_next/static/chunks/72badd90e1c91348.js +0 -1
  403. package/dashboard/out/_next/static/chunks/72f9296dbb7ae3c4.js +0 -1
  404. package/dashboard/out/_next/static/chunks/73aa31e1144d8191.js +0 -1
  405. package/dashboard/out/_next/static/chunks/73f98ded8fe2e879.js +0 -1
  406. package/dashboard/out/_next/static/chunks/740a2e8ace15e13b.js +0 -1
  407. package/dashboard/out/_next/static/chunks/74e57c16e7304b6b.js +0 -1
  408. package/dashboard/out/_next/static/chunks/7628dead4d113df2.js +0 -1
  409. package/dashboard/out/_next/static/chunks/7717c88c07ed96e6.js +0 -1
  410. package/dashboard/out/_next/static/chunks/775581f7956d9a27.js +0 -1
  411. package/dashboard/out/_next/static/chunks/77d3b6661befdb98.js +0 -1
  412. package/dashboard/out/_next/static/chunks/78435c0e1c77fea7.js +0 -1
  413. package/dashboard/out/_next/static/chunks/791336748b9c9393.js +0 -1
  414. package/dashboard/out/_next/static/chunks/79ea68dfae65ef2f.js +0 -1
  415. package/dashboard/out/_next/static/chunks/7bae777a472eb13c.js +0 -1
  416. package/dashboard/out/_next/static/chunks/7fd847f47237a35c.js +0 -1
  417. package/dashboard/out/_next/static/chunks/804d718be0370058.css +0 -1
  418. package/dashboard/out/_next/static/chunks/807cb3c1923995ab.js +0 -1
  419. package/dashboard/out/_next/static/chunks/8286b39407d94447.js +0 -1
  420. package/dashboard/out/_next/static/chunks/84e4305b8dc830ed.js +0 -1
  421. package/dashboard/out/_next/static/chunks/850f99dbfabb53e0.js +0 -1
  422. package/dashboard/out/_next/static/chunks/85594127e66b6b7f.js +0 -1
  423. package/dashboard/out/_next/static/chunks/858c11169c183c9c.js +0 -1
  424. package/dashboard/out/_next/static/chunks/85e27005dfe4c3e3.js +0 -1
  425. package/dashboard/out/_next/static/chunks/8707bd3d8ddc1f1c.js +0 -1
  426. package/dashboard/out/_next/static/chunks/8851e5d7ef894973.js +0 -1
  427. package/dashboard/out/_next/static/chunks/88ba3782cc614989.js +0 -1
  428. package/dashboard/out/_next/static/chunks/8a0c9a181784c2ef.js +0 -1
  429. package/dashboard/out/_next/static/chunks/8ad01ae355a6e7f6.js +0 -1
  430. package/dashboard/out/_next/static/chunks/8d2ed93b0d0a4b4f.js +0 -1
  431. package/dashboard/out/_next/static/chunks/8dc352ebd5310d3c.js +0 -1
  432. package/dashboard/out/_next/static/chunks/8dd1d722c8c1a22c.js +0 -1
  433. package/dashboard/out/_next/static/chunks/8e60fe307e3e4986.js +0 -1
  434. package/dashboard/out/_next/static/chunks/8eea4dd71e25f32a.js +0 -1
  435. package/dashboard/out/_next/static/chunks/8f468a65bac34eaa.js +0 -1
  436. package/dashboard/out/_next/static/chunks/9057e5382d6a5059.js +0 -1
  437. package/dashboard/out/_next/static/chunks/931d056437805ecb.js +0 -1
  438. package/dashboard/out/_next/static/chunks/954eb11648dd8cff.js +0 -1
  439. package/dashboard/out/_next/static/chunks/955034d876d14bb3.js +0 -1
  440. package/dashboard/out/_next/static/chunks/966c4895773249f6.js +0 -1
  441. package/dashboard/out/_next/static/chunks/96aff410a6ab106c.js +0 -1
  442. package/dashboard/out/_next/static/chunks/99b396c821c1dd2d.js +0 -1
  443. package/dashboard/out/_next/static/chunks/9a255fd2cf4922ae.js +0 -1
  444. package/dashboard/out/_next/static/chunks/9b1f6aa73bc864b2.js +0 -1
  445. package/dashboard/out/_next/static/chunks/9b9ce582c533aa79.js +0 -1
  446. package/dashboard/out/_next/static/chunks/9c19bd3c773c6611.js +0 -1
  447. package/dashboard/out/_next/static/chunks/9ceeaa847eb15ca2.js +0 -1
  448. package/dashboard/out/_next/static/chunks/9d2e6e7b8b65f845.js +0 -1
  449. package/dashboard/out/_next/static/chunks/9de23802066128ff.js +0 -1
  450. package/dashboard/out/_next/static/chunks/9e327f94b3701170.js +0 -1
  451. package/dashboard/out/_next/static/chunks/9e7818421c2d455a.js +0 -1
  452. package/dashboard/out/_next/static/chunks/9e935acbcf2fb519.js +0 -1
  453. package/dashboard/out/_next/static/chunks/9ed9f68340343b51.js +0 -1
  454. package/dashboard/out/_next/static/chunks/9f94a0242455fc20.js +0 -1
  455. package/dashboard/out/_next/static/chunks/9fff46b5aaecf47e.js +0 -1
  456. package/dashboard/out/_next/static/chunks/a06d267a5c557657.js +0 -1
  457. package/dashboard/out/_next/static/chunks/a0eb8c81c54722fe.js +0 -1
  458. package/dashboard/out/_next/static/chunks/a16808e83106427d.js +0 -1
  459. package/dashboard/out/_next/static/chunks/a2215e2bc72739ef.js +0 -1
  460. package/dashboard/out/_next/static/chunks/a2de9e6696eb9c17.js +0 -1
  461. package/dashboard/out/_next/static/chunks/a33420b8c14090d6.js +0 -1
  462. package/dashboard/out/_next/static/chunks/a360bffef39d818b.js +0 -1
  463. package/dashboard/out/_next/static/chunks/a42852fdf5287cf5.js +0 -1
  464. package/dashboard/out/_next/static/chunks/a4efc88488322b67.js +0 -1
  465. package/dashboard/out/_next/static/chunks/a696a91d14101bdb.js +0 -1
  466. package/dashboard/out/_next/static/chunks/a6dad97d9634a72d.js +0 -1
  467. package/dashboard/out/_next/static/chunks/a6dad97d9634a72d.js.map +0 -1
  468. package/dashboard/out/_next/static/chunks/a705c7261712bd8e.js +0 -1
  469. package/dashboard/out/_next/static/chunks/a7d1e4b067ace180.js +0 -1
  470. package/dashboard/out/_next/static/chunks/a8590c121a7efaa5.js +0 -1
  471. package/dashboard/out/_next/static/chunks/a95953a83a6df6cf.js +0 -1
  472. package/dashboard/out/_next/static/chunks/a9d0a757d3b4afed.js +0 -1
  473. package/dashboard/out/_next/static/chunks/a9dc35514619c872.js +0 -1
  474. package/dashboard/out/_next/static/chunks/aae0253c73fba984.js +0 -193
  475. package/dashboard/out/_next/static/chunks/ab1821552066a74d.js +0 -1
  476. package/dashboard/out/_next/static/chunks/ac96bc0eccebe15a.js +0 -1
  477. package/dashboard/out/_next/static/chunks/acc03cfaaf6bb30f.js +0 -1
  478. package/dashboard/out/_next/static/chunks/acc298ae059b9fe4.js +0 -1
  479. package/dashboard/out/_next/static/chunks/ad076b6e996d250c.js +0 -1
  480. package/dashboard/out/_next/static/chunks/ae53b64af7ba16d5.js +0 -1
  481. package/dashboard/out/_next/static/chunks/ae5da7fa4bc5fa95.js +0 -1
  482. package/dashboard/out/_next/static/chunks/aefcf0eb033a155e.js +0 -1
  483. package/dashboard/out/_next/static/chunks/b12d43100ee10526.js +0 -1
  484. package/dashboard/out/_next/static/chunks/b137952dd5566a41.js +0 -1
  485. package/dashboard/out/_next/static/chunks/b2832d8a2d332a47.js +0 -1
  486. package/dashboard/out/_next/static/chunks/b417aa09c15f63c6.js +0 -1
  487. package/dashboard/out/_next/static/chunks/b48e152ba7bf6caf.js +0 -1
  488. package/dashboard/out/_next/static/chunks/b4cbef8e4714bf92.js +0 -1
  489. package/dashboard/out/_next/static/chunks/b568ff8383a37f53.js +0 -1
  490. package/dashboard/out/_next/static/chunks/b6e1495dd89a39e3.js +0 -1
  491. package/dashboard/out/_next/static/chunks/b73a21bd67528440.js +0 -1
  492. package/dashboard/out/_next/static/chunks/b77ee62bc71dcec7.js +0 -1
  493. package/dashboard/out/_next/static/chunks/b7f454615c11d4eb.js +0 -1
  494. package/dashboard/out/_next/static/chunks/b818ea32a839590f.js +0 -1
  495. package/dashboard/out/_next/static/chunks/b901ce78c1c65d66.js +0 -1
  496. package/dashboard/out/_next/static/chunks/b93d647b803be9fa.js +0 -1
  497. package/dashboard/out/_next/static/chunks/b960b09ff1ecd6bb.js +0 -1
  498. package/dashboard/out/_next/static/chunks/ba717c7779a778fc.js +0 -1
  499. package/dashboard/out/_next/static/chunks/bacb0ae7458d18b6.js +0 -1
  500. package/dashboard/out/_next/static/chunks/bb51f68b27346852.js +0 -1
  501. package/dashboard/out/_next/static/chunks/bb67f22e1ab632ae.js +0 -1
  502. package/dashboard/out/_next/static/chunks/bbae97ec58d1bb9d.js +0 -1
  503. package/dashboard/out/_next/static/chunks/bbaf38ee90307765.js +0 -1
  504. package/dashboard/out/_next/static/chunks/be01598fe1fce5db.js +0 -1
  505. package/dashboard/out/_next/static/chunks/bf4cbbc095987fec.js +0 -1
  506. package/dashboard/out/_next/static/chunks/c18f823797d57446.js +0 -1
  507. package/dashboard/out/_next/static/chunks/c1bcece34ec5b295.js +0 -1
  508. package/dashboard/out/_next/static/chunks/c1ccbc3a51adaf0a.js +0 -1
  509. package/dashboard/out/_next/static/chunks/c1f54a628f27791c.js +0 -1
  510. package/dashboard/out/_next/static/chunks/c21916bf5d232151.js +0 -1
  511. package/dashboard/out/_next/static/chunks/c27e570f0fc2f78b.js +0 -1
  512. package/dashboard/out/_next/static/chunks/c322b8005eebc0d8.js +0 -1
  513. package/dashboard/out/_next/static/chunks/c3900ac2b009b764.js +0 -1
  514. package/dashboard/out/_next/static/chunks/c3c597c8eb77ad6b.js +0 -1
  515. package/dashboard/out/_next/static/chunks/c58d45c1d88e208c.js +0 -1
  516. package/dashboard/out/_next/static/chunks/c63875998d7a655f.js +0 -1
  517. package/dashboard/out/_next/static/chunks/c6eaa7c8e7209c8e.js +0 -1
  518. package/dashboard/out/_next/static/chunks/c6f820f71162a59a.js +0 -1
  519. package/dashboard/out/_next/static/chunks/c7ce0941d1dfe7ed.js +0 -1
  520. package/dashboard/out/_next/static/chunks/c877259f784ec8e5.js +0 -1
  521. package/dashboard/out/_next/static/chunks/cb8057e86aaa1c68.js +0 -1
  522. package/dashboard/out/_next/static/chunks/ccb4e306ee4859b1.js +0 -1
  523. package/dashboard/out/_next/static/chunks/ccde62b0fa8112eb.js +0 -1
  524. package/dashboard/out/_next/static/chunks/cd421f0971c63c31.js +0 -1
  525. package/dashboard/out/_next/static/chunks/cde0317494d4adb7.js +0 -1
  526. package/dashboard/out/_next/static/chunks/cfae64434b92b8b6.js +0 -1
  527. package/dashboard/out/_next/static/chunks/cfc0e19310ec0a36.js +0 -1
  528. package/dashboard/out/_next/static/chunks/d0f344c7d0bcb59a.js +0 -1
  529. package/dashboard/out/_next/static/chunks/d1871c73e74e1f50.js +0 -1
  530. package/dashboard/out/_next/static/chunks/d18f658850711061.js +0 -1
  531. package/dashboard/out/_next/static/chunks/d25d9c48880697f6.js +0 -1
  532. package/dashboard/out/_next/static/chunks/d3f0a72bbc3060b0.js +0 -1
  533. package/dashboard/out/_next/static/chunks/d5fca429bc89060b.js +0 -1
  534. package/dashboard/out/_next/static/chunks/d6a6c75c9a4bef49.js +0 -1
  535. package/dashboard/out/_next/static/chunks/d6a8f93aa8f1e345.js +0 -1
  536. package/dashboard/out/_next/static/chunks/d7deab676b19ba0e.js +0 -1
  537. package/dashboard/out/_next/static/chunks/d80030dde88cec85.js +0 -1
  538. package/dashboard/out/_next/static/chunks/da84f9774c076ff1.js +0 -1
  539. package/dashboard/out/_next/static/chunks/da98ecc6b9b0ceb2.js +0 -1
  540. package/dashboard/out/_next/static/chunks/db550aabce60b912.js +0 -4
  541. package/dashboard/out/_next/static/chunks/dc87f77fcc029482.js +0 -1
  542. package/dashboard/out/_next/static/chunks/dd05f30acdb63a53.js +0 -1
  543. package/dashboard/out/_next/static/chunks/dea150155499b903.js +0 -1
  544. package/dashboard/out/_next/static/chunks/df4358754ff1d5e8.js +0 -1
  545. package/dashboard/out/_next/static/chunks/df8b21ff12d23b0e.js +0 -1
  546. package/dashboard/out/_next/static/chunks/df8fc68d77debf2c.js +0 -1
  547. package/dashboard/out/_next/static/chunks/df9ed1ffec90589f.js +0 -1
  548. package/dashboard/out/_next/static/chunks/dfa65ece1598f934.js +0 -1
  549. package/dashboard/out/_next/static/chunks/dfaab5cdd41a20d9.js +0 -1
  550. package/dashboard/out/_next/static/chunks/e00c03c942b5ae3e.js +0 -1
  551. package/dashboard/out/_next/static/chunks/e02d27cf679bece1.js +0 -1
  552. package/dashboard/out/_next/static/chunks/e0b747585f78513a.js +0 -1
  553. package/dashboard/out/_next/static/chunks/e19b71ca23fd7df0.js +0 -1
  554. package/dashboard/out/_next/static/chunks/e21cbe89d0cda120.js +0 -1
  555. package/dashboard/out/_next/static/chunks/e2a0386930edd34f.js +0 -1
  556. package/dashboard/out/_next/static/chunks/e375de19a36e2f38.js +0 -1
  557. package/dashboard/out/_next/static/chunks/e5241b4a6496a9e0.js +0 -1
  558. package/dashboard/out/_next/static/chunks/e569dd07c96eb4dd.js +0 -1
  559. package/dashboard/out/_next/static/chunks/e61c3ea91233f948.js +0 -1
  560. package/dashboard/out/_next/static/chunks/e73b42c5d34c4c28.js +0 -1
  561. package/dashboard/out/_next/static/chunks/e7c5b2105f651e87.js +0 -1
  562. package/dashboard/out/_next/static/chunks/e878e58a69bb01b6.js +0 -1
  563. package/dashboard/out/_next/static/chunks/e8f090a4dc571062.js +0 -1
  564. package/dashboard/out/_next/static/chunks/e98dc34dac91cdad.js +0 -1
  565. package/dashboard/out/_next/static/chunks/ea67cf7a0c5e7233.js +0 -1
  566. package/dashboard/out/_next/static/chunks/eacc98a1e3512fa9.js +0 -1
  567. package/dashboard/out/_next/static/chunks/eae9cd74d9bbed8b.js +0 -1
  568. package/dashboard/out/_next/static/chunks/eb187fd345852b34.js +0 -1
  569. package/dashboard/out/_next/static/chunks/ecea46df7a40b427.js +0 -1
  570. package/dashboard/out/_next/static/chunks/ecf48b83f4245d9c.js +0 -1
  571. package/dashboard/out/_next/static/chunks/eda41732bf966c6d.js +0 -1
  572. package/dashboard/out/_next/static/chunks/ee174a433049f43a.js +0 -1
  573. package/dashboard/out/_next/static/chunks/ee66b2d3b76de72e.js +0 -1
  574. package/dashboard/out/_next/static/chunks/ef058d3041c3d8ab.js +0 -1
  575. package/dashboard/out/_next/static/chunks/f3544b800b0d4969.js +0 -1
  576. package/dashboard/out/_next/static/chunks/f3b280e604b97509.js +0 -1
  577. package/dashboard/out/_next/static/chunks/f42e1d3693232993.js +0 -1
  578. package/dashboard/out/_next/static/chunks/f5a5fdd80166d304.js +0 -1
  579. package/dashboard/out/_next/static/chunks/f60adc5dd6169316.js +0 -1
  580. package/dashboard/out/_next/static/chunks/f6255bc2e6c68ce8.js +0 -1
  581. package/dashboard/out/_next/static/chunks/f6bb677d2d8840db.js +0 -1
  582. package/dashboard/out/_next/static/chunks/f6f3bf016239c33a.js +0 -1
  583. package/dashboard/out/_next/static/chunks/f6f57a46cd074bfe.js +0 -1
  584. package/dashboard/out/_next/static/chunks/f7feb9c1199e8cf6.js +0 -1
  585. package/dashboard/out/_next/static/chunks/f831087bf964cc3d.js +0 -1
  586. package/dashboard/out/_next/static/chunks/fa5a2f7244935aa2.js +0 -1
  587. package/dashboard/out/_next/static/chunks/fa73f36df4c38fa0.js +0 -1
  588. package/dashboard/out/_next/static/chunks/faa1461722d6a88d.js +0 -1
  589. package/dashboard/out/_next/static/chunks/fbf706b9a0edb7e6.js +0 -1
  590. package/dashboard/out/_next/static/chunks/fc2b8c8b7446bbc2.js +0 -1
  591. package/dashboard/out/_next/static/chunks/fd516f3930c128c1.js +0 -1
  592. package/dashboard/out/_next/static/chunks/fd663e7ff8de4887.js +0 -1
  593. package/dashboard/out/_next/static/chunks/fe5b656cc9bdd60e.js +0 -1
  594. package/dashboard/out/_next/static/chunks/turbopack-2f5dec4a537c0ee7.js +0 -4
  595. package/dashboard/out/_next/static/media/02263ebadd758ea4-s.8da66e7f.woff2 +0 -0
  596. package/dashboard/out/_next/static/media/2fe89d53234c61d4-s.cb53f04b.woff2 +0 -0
  597. package/dashboard/out/_next/static/media/59b15b4bcd7b1eb5-s.afa48be3.woff2 +0 -0
  598. package/dashboard/out/_next/static/media/5e05ae5b48faa55e-s.6b5ea6af.woff2 +0 -0
  599. package/dashboard/out/_next/static/media/68757d6cddeff913-s.e6cd1753.woff2 +0 -0
  600. package/dashboard/out/_next/static/media/99e609270109b47d-s.p.64b9304e.woff2 +0 -0
  601. package/dashboard/out/_next/static/media/a7afbb44bec2bb18-s.1dcddae6.woff2 +0 -0
  602. package/dashboard/out/_next/static/media/e390973e931a41c5-s.a82ecf4e.woff2 +0 -0
  603. package/dashboard/out/_next/static/media/e532fa1b9921e1cd-s.764b43eb.woff2 +0 -0
  604. package/dashboard/out/_next/static/media/effe91970fc4db64-s.p.19510058.woff2 +0 -0
  605. package/dashboard/out/_not-found/__next._full.txt +0 -15
  606. package/dashboard/out/_not-found/__next._head.txt +0 -5
  607. package/dashboard/out/_not-found/__next._index.txt +0 -7
  608. package/dashboard/out/_not-found/__next._not-found.__PAGE__.txt +0 -5
  609. package/dashboard/out/_not-found/__next._not-found.txt +0 -4
  610. package/dashboard/out/_not-found/__next._tree.txt +0 -2
  611. package/dashboard/out/_not-found/index.html +0 -1
  612. package/dashboard/out/_not-found/index.txt +0 -15
  613. package/dashboard/out/index.html +0 -1
  614. package/dashboard/out/index.txt +0 -21
  615. package/dashboard/out/project/__fallback/__next._full.txt +0 -19
  616. package/dashboard/out/project/__fallback/__next._head.txt +0 -5
  617. package/dashboard/out/project/__fallback/__next._index.txt +0 -7
  618. package/dashboard/out/project/__fallback/__next._tree.txt +0 -5
  619. package/dashboard/out/project/__fallback/__next.project.$d$name.__PAGE__.txt +0 -7
  620. package/dashboard/out/project/__fallback/__next.project.$d$name.txt +0 -4
  621. package/dashboard/out/project/__fallback/__next.project.txt +0 -4
  622. package/dashboard/out/project/__fallback/index.html +0 -1
  623. package/dashboard/out/project/__fallback/index.txt +0 -19
  624. package/src/__tests__/support.ts +0 -186
  625. package/src/attach.ts +0 -20
  626. package/src/cli.test.ts +0 -314
  627. package/src/command-center/discovery.test.ts +0 -265
  628. package/src/command-center/discovery.ts +0 -296
  629. package/src/command-center/index.ts +0 -31
  630. package/src/command-center/schemas.ts +0 -57
  631. package/src/command-center/server.test.ts +0 -814
  632. package/src/command-center/server.ts +0 -1427
  633. package/src/command-center/static.test.ts +0 -105
  634. package/src/command-center/static.ts +0 -122
  635. package/src/config-cli.test.ts +0 -86
  636. package/src/config.test.ts +0 -205
  637. package/src/config.ts +0 -313
  638. package/src/detect.test.ts +0 -142
  639. package/src/detect.ts +0 -248
  640. package/src/dispatch.ts +0 -102
  641. package/src/doctor.test.ts +0 -119
  642. package/src/doctor.ts +0 -167
  643. package/src/init.test.ts +0 -101
  644. package/src/init.ts +0 -211
  645. package/src/inspect.test.ts +0 -67
  646. package/src/inspect.ts +0 -212
  647. package/src/integration.test.ts.skip +0 -276
  648. package/src/js-yaml.d.ts +0 -10
  649. package/src/launch.test.ts +0 -149
  650. package/src/launch.ts +0 -583
  651. package/src/lib/auth/auth-service.test.ts +0 -178
  652. package/src/lib/auth/auth-service.ts +0 -227
  653. package/src/lib/auth/middleware.test.ts +0 -119
  654. package/src/lib/auth/middleware.ts +0 -56
  655. package/src/lib/auth/types.ts +0 -13
  656. package/src/lib/authorship.test.ts +0 -242
  657. package/src/lib/authorship.ts +0 -280
  658. package/src/lib/cast/recorder.test.ts +0 -127
  659. package/src/lib/cast/recorder.ts +0 -148
  660. package/src/lib/daemon-watchdog.ts +0 -102
  661. package/src/lib/daemon.ts +0 -440
  662. package/src/lib/dot-path.test.ts +0 -66
  663. package/src/lib/dot-path.ts +0 -17
  664. package/src/lib/errors.ts +0 -44
  665. package/src/lib/event-log.test.ts +0 -189
  666. package/src/lib/event-log.ts +0 -237
  667. package/src/lib/github-pr.ts +0 -182
  668. package/src/lib/hq/client.test.ts +0 -154
  669. package/src/lib/hq/client.ts +0 -142
  670. package/src/lib/hq/mdns.test.ts +0 -54
  671. package/src/lib/hq/mdns.ts +0 -88
  672. package/src/lib/hq/registry.test.ts +0 -237
  673. package/src/lib/hq/registry.ts +0 -145
  674. package/src/lib/hq/types.ts +0 -44
  675. package/src/lib/ipc/socket-protocol.test.ts +0 -126
  676. package/src/lib/ipc/socket-protocol.ts +0 -324
  677. package/src/lib/launch-plan.test.ts +0 -119
  678. package/src/lib/launch-plan.ts +0 -90
  679. package/src/lib/log.test.ts +0 -39
  680. package/src/lib/log.ts +0 -71
  681. package/src/lib/metrics.test.ts +0 -213
  682. package/src/lib/metrics.ts +0 -345
  683. package/src/lib/orchestrator.test.ts +0 -2358
  684. package/src/lib/orchestrator.ts +0 -1799
  685. package/src/lib/output.ts +0 -76
  686. package/src/lib/plan-store.test.ts +0 -148
  687. package/src/lib/plan-store.ts +0 -131
  688. package/src/lib/research.test.ts +0 -208
  689. package/src/lib/research.ts +0 -475
  690. package/src/lib/round-trip.test.ts +0 -341
  691. package/src/lib/session-monitor.test.ts +0 -152
  692. package/src/lib/session-monitor.ts +0 -284
  693. package/src/lib/session-options.test.ts +0 -146
  694. package/src/lib/session-options.ts +0 -100
  695. package/src/lib/shell.test.ts +0 -20
  696. package/src/lib/sizes.test.ts +0 -73
  697. package/src/lib/sizes.ts +0 -36
  698. package/src/lib/skill-registry.test.ts +0 -134
  699. package/src/lib/skill-registry.ts +0 -86
  700. package/src/lib/slugify.test.ts +0 -35
  701. package/src/lib/slugify.ts +0 -10
  702. package/src/lib/task-store.ts +0 -352
  703. package/src/lib/tmux.test.ts +0 -500
  704. package/src/lib/tmux.ts +0 -372
  705. package/src/lib/token-tracker.test.ts +0 -102
  706. package/src/lib/token-tracker.ts +0 -70
  707. package/src/lib/tunnels/cloudflare.test.ts +0 -73
  708. package/src/lib/tunnels/cloudflare.ts +0 -254
  709. package/src/lib/tunnels/manager.test.ts +0 -63
  710. package/src/lib/tunnels/manager.ts +0 -132
  711. package/src/lib/tunnels/ngrok.test.ts +0 -94
  712. package/src/lib/tunnels/ngrok.ts +0 -261
  713. package/src/lib/tunnels/tailscale.test.ts +0 -103
  714. package/src/lib/tunnels/tailscale.ts +0 -1048
  715. package/src/lib/tunnels/types.ts +0 -44
  716. package/src/lib/validation.test.ts +0 -289
  717. package/src/lib/validation.ts +0 -123
  718. package/src/lib/webhook.ts +0 -51
  719. package/src/lib/workflow-store.ts +0 -209
  720. package/src/lib/ws-v3/protocol.test.ts +0 -127
  721. package/src/lib/ws-v3/protocol.ts +0 -160
  722. package/src/lib/yaml-io.test.ts +0 -125
  723. package/src/lib/yaml-io.ts +0 -27
  724. package/src/ls.test.ts +0 -76
  725. package/src/ls.ts +0 -40
  726. package/src/metrics-cli.ts +0 -177
  727. package/src/notify.ts +0 -85
  728. package/src/orchestrator-status.ts +0 -228
  729. package/src/plan.ts +0 -117
  730. package/src/postinstall.test.ts +0 -79
  731. package/src/remote.test.ts +0 -115
  732. package/src/remote.ts +0 -148
  733. package/src/restart.ts +0 -24
  734. package/src/schemas/domain.ts +0 -422
  735. package/src/schemas/ide-config.ts +0 -148
  736. package/src/schemas/index.ts +0 -53
  737. package/src/send.test.ts +0 -70
  738. package/src/send.ts +0 -181
  739. package/src/skill.test.ts +0 -114
  740. package/src/skill.ts +0 -138
  741. package/src/status.ts +0 -66
  742. package/src/stop.test.ts +0 -151
  743. package/src/stop.ts +0 -37
  744. package/src/task.test.ts +0 -1466
  745. package/src/task.ts +0 -1143
  746. package/src/tunnel.test.ts +0 -80
  747. package/src/tunnel.ts +0 -133
  748. package/src/types.ts +0 -15
  749. package/src/ui/index.ts +0 -32
  750. package/src/ui/terminal/index.ts +0 -9
  751. package/src/ui/types.ts +0 -91
  752. package/src/ui/web/base.css +0 -80
  753. package/src/ui/web/components/Box.tsx +0 -59
  754. package/src/ui/web/components/Input.tsx +0 -32
  755. package/src/ui/web/components/ScrollBox.tsx +0 -60
  756. package/src/ui/web/components/Text.tsx +0 -28
  757. package/src/ui/web/hooks.ts +0 -106
  758. package/src/ui/web/index.ts +0 -27
  759. package/src/ui/web/render.ts +0 -77
  760. package/src/ui/web/utils/color.test.ts +0 -93
  761. package/src/ui/web/utils/color.ts +0 -27
  762. package/src/validate.test.ts +0 -385
  763. package/src/validate.ts +0 -217
  764. package/src/widgets/changes/index.tsx +0 -576
  765. package/src/widgets/config/index.tsx +0 -440
  766. package/src/widgets/costs/index.tsx +0 -216
  767. package/src/widgets/explorer/breadcrumbs.tsx +0 -77
  768. package/src/widgets/explorer/footer.tsx +0 -20
  769. package/src/widgets/explorer/header.tsx +0 -23
  770. package/src/widgets/explorer/index.tsx +0 -408
  771. package/src/widgets/explorer/tree-model.test.ts +0 -214
  772. package/src/widgets/explorer/tree-model.ts +0 -103
  773. package/src/widgets/explorer/tree.tsx +0 -156
  774. package/src/widgets/lib/config-model.ts +0 -116
  775. package/src/widgets/lib/files.test.ts +0 -103
  776. package/src/widgets/lib/files.ts +0 -88
  777. package/src/widgets/lib/git.test.ts +0 -151
  778. package/src/widgets/lib/git.ts +0 -88
  779. package/src/widgets/lib/pane-comms.test.ts +0 -178
  780. package/src/widgets/lib/pane-comms.ts +0 -207
  781. package/src/widgets/lib/theme.ts +0 -151
  782. package/src/widgets/lib/watcher.ts +0 -50
  783. package/src/widgets/mission-control/activity-feed.tsx +0 -59
  784. package/src/widgets/mission-control/agent-panel.tsx +0 -132
  785. package/src/widgets/mission-control/command-bar.tsx +0 -63
  786. package/src/widgets/mission-control/index.tsx +0 -751
  787. package/src/widgets/mission-control/task-panel.tsx +0 -238
  788. package/src/widgets/preview/index.tsx +0 -415
  789. package/src/widgets/resolve.ts +0 -40
  790. package/src/widgets/setup/agent-naming.tsx +0 -112
  791. package/src/widgets/setup/config-tree.tsx +0 -238
  792. package/src/widgets/setup/field-editor.tsx +0 -265
  793. package/src/widgets/setup/footer.tsx +0 -107
  794. package/src/widgets/setup/index.tsx +0 -340
  795. package/src/widgets/setup/layout-picker.tsx +0 -96
  796. package/src/widgets/setup/orchestrator-panel.tsx +0 -200
  797. package/src/widgets/setup/review-panel.tsx +0 -140
  798. package/src/widgets/setup/setup-model.test.ts +0 -303
  799. package/src/widgets/setup/setup-model.ts +0 -188
  800. package/src/widgets/tasks/index.tsx +0 -129
  801. package/src/widgets/tasks/task-detail.tsx +0 -309
  802. package/src/widgets/tasks/task-form.tsx +0 -193
  803. package/src/widgets/tasks/task-list.tsx +0 -205
  804. package/src/widgets/tasks/task-model.test.ts +0 -473
  805. package/src/widgets/tasks/task-model.ts +0 -157
package/skill/SKILL.md CHANGED
@@ -1,289 +1,256 @@
1
1
  # tmux-ide — Claude Code Skill
2
2
 
3
- tmux-ide turns any project into a tmux-powered terminal IDE using a simple `ide.yml` config file.
3
+ <!-- tmux-ide-skill-version: 2.6.0 -->
4
4
 
5
- ## When to use
6
-
7
- - User mentions multi-pane, tmux, terminal IDE, or dev environment
8
- - User wants to set up a development workspace
9
- - User asks about running multiple terminals/tools side-by-side
10
- - User wants to coordinate multiple Claude Code instances as a team
11
- - User mentions agent teams, team lead, or multi-agent workflows
12
-
13
- ## Setup workflow
14
-
15
- 1. Check if `ide.yml` exists: `tmux-ide status --json`
16
- 2. Auto-detect the project: `tmux-ide detect --json`
17
- 3. **Present 2-3 layout options using ASCII diagrams** before writing config. Example:
18
-
19
- **Option A — Dual Claude + Dev (recommended)**
20
-
21
- ```
22
- ┌─────────────────┬─────────────────┐
23
- │ │ │
24
- │ Claude 1 │ Claude 2 │ 70%
25
- │ │ │
26
- ├────────┬────────┴────────┬────────┤
27
- │Dev Srv │ Tests │ Shell │ │ 30%
28
- └────────┴─────────┴───────┘────────┘
29
- ```
30
-
31
- **Option B — Triple Claude**
32
-
33
- ```
34
- ┌───────────┬───────────┬───────────┐
35
- │ │ │ │
36
- │ Claude 1 │ Claude 2 │ Claude 3 │ 70%
37
- │ │ │ │
38
- ├───────────┴─────┬─────┴───────────┤
39
- │ Dev Server │ Shell │ 30%
40
- └─────────────────┴─────────────────┘
41
- ```
42
-
43
- **Option C — Single Claude + wide dev**
44
-
45
- ```
46
- ┌─────────────────────────────────────┐
47
- │ Claude │ 60%
48
- ├──────────┬──────────┬──────────────┤
49
- │ Dev Srv │ Tests │ Shell │ 40%
50
- └──────────┴──────────┴──────────────┘
51
- ```
52
-
53
- Adapt pane names/commands to the detected stack.
54
-
55
- 4. Once the user picks, write the config:
56
- - Quick: `tmux-ide detect --write` then modify
57
- - Or build custom with `tmux-ide config` subcommands
5
+ tmux-ide is a **dock around tmux**: one command adds a native chrome to any tmux
6
+ session — a fleet of tabs with live agent-status glyphs, ground-truth
7
+ working/blocked/done detection, notifications when an agent needs a human, and a
8
+ crash-proof restore. It's built _around_ tmux (adopt is additive tmux config, no
9
+ wrapper process), and the whole UI is one keystroke away — one interaction
10
+ grammar, one theme file. `ide.yml` is optional; adopt works on any session.
58
11
 
59
- ## Agent Teams workflow
60
-
61
- Agent teams coordinate multiple Claude Code instances where a lead delegates tasks to teammates. Each gets its own tmux pane, and tmux-ide prepares that layout before Claude starts the actual team workflow.
62
-
63
- ### When to suggest agent teams
64
-
65
- - User wants coordinated multi-agent development
66
- - User mentions team lead, teammates, or task delegation
67
- - User wants parallel work with inter-agent communication
68
- - User's task benefits from specialized roles (e.g., frontend + backend + review)
69
-
70
- ### Prerequisites
71
-
72
- Agent teams require `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1`. The tmux-ide install hook enables this in Claude Code settings, and tmux-ide also sets it automatically inside tmux sessions when `team` is configured in `ide.yml`.
73
-
74
- ### Setup from scratch
75
-
76
- 1. **Scaffold with agent team template:**
77
-
78
- ```bash
79
- tmux-ide init --template agent-team
80
- ```
81
-
82
- 2. **Or enable teams on an existing config:**
83
-
84
- ```bash
85
- tmux-ide config enable-team --name "my-team"
86
- ```
87
-
88
- This finds all `command: claude` panes and assigns the first as `lead`, the rest as `teammate`.
89
-
90
- 3. **Assign initial task hints to teammate panes:**
91
-
92
- ```bash
93
- tmux-ide config set rows.0.panes.1.task "Work on frontend components"
94
- tmux-ide config set rows.0.panes.2.task "Work on API routes"
95
- ```
96
-
97
- 4. **Validate and launch the layout:**
98
-
99
- ```bash
100
- tmux-ide validate --json
101
- tmux-ide
102
- ```
12
+ ## When to use
103
13
 
104
- 5. **Inside the lead pane, ask Claude to form the team:**
14
+ - User mentions tmux, a dock/status bar over sessions, an agent fleet, or session status
15
+ - User wants live working/blocked/done status across multiple agents or panes
16
+ - **You are an agent and want to report your own status** so the dock/fleet reflects it (the agent contract, below)
17
+ - Post-crash recovery — a tmux server died and the user wants their fleet + Claude conversations back
18
+ - User wants a git worktree (plus an adopted session) per branch
19
+ - User wants to set up a multi-pane dev workspace with `ide.yml`
105
20
 
106
- ```text
107
- Start an agent team named my-team. Use the Frontend pane for components and the Backend pane for API routes.
108
- ```
21
+ ## The agent contract
109
22
 
110
- ### Present team layout options
23
+ **This is the core of tmux-ide.** Detection is two-layer, and an agent that
24
+ reports its own state is the authoritative layer — the dock trusts it over any
25
+ screen-scraping. If you are an agent running in a tmux pane, self-report by
26
+ setting a pane-local tmux option:
111
27
 
112
- When suggesting agent team layouts, show the roles and note that Claude will create the team after launch:
28
+ ```bash
29
+ tmux set-option -p @agent_state "<state>:$(date +%s)" # state = working | blocked | done | idle
30
+ ```
113
31
 
114
- **Option A — Lead + 2 Teammates**
32
+ The value is `<state>:<unix-epoch>`. A `working`/`blocked` report older than ~10
33
+ minutes is treated as stale (the detector falls back to Layer 2), so long-running
34
+ agents should re-stamp periodically. Two optional companions:
115
35
 
116
- ```
117
- ┌───────────┬───────────┬───────────┐
118
- │ │ │ │
119
- │ Lead │Teammate 1 │Teammate 2 │ 70%
120
- │ (claude) │ (claude) │ (claude) │
121
- ├───────────┴─────┬─────┴───────────┤
122
- │ Dev Server │ Shell │ 30%
123
- └─────────────────┴─────────────────┘
36
+ ```bash
37
+ tmux set-option -p @agent_session_id "<id>" # your Claude session id — powers restore --resume-agents
38
+ tmux set-option -p @agent_hint claude # force which agent manifest Layer 2 uses for this pane
124
39
  ```
125
40
 
126
- **Option B — Lead + 3 Specialized Teammates**
41
+ **Claude Code users get this for free** — `tmux-ide integration install claude`
42
+ writes a POSIX hook into `~/.claude/settings.json` that stamps `@agent_state` on
43
+ every lifecycle event (UserPromptSubmit/PreToolUse → working, Notification →
44
+ blocked, Stop → done, SessionEnd → idle) and records `@agent_session_id`. It
45
+ takes effect for **new** Claude Code sessions; the merge is reversible
46
+ (`integration uninstall claude`).
127
47
 
128
- ```
129
- ┌────────┬────────┬────────┬────────┐
130
- │ │Frontend│Backend │ Review │
131
- │ Lead │ Agent │ Agent │ Agent │ 70%
132
- │ │ │ │ │
133
- ├────────┴────────┴──┬─────┴────────┤
134
- │ Dev Server │ Shell │ 30%
135
- └────────────────────┴──────────────┘
136
- ```
48
+ **How detection layers work:** Layer 1 is the authority above — a fresh
49
+ `@agent_state` option is ground truth. When none is present, Layer 2 resolves the
50
+ agent from the pane's process tree and reads the visible screen against
51
+ evidence-tuned per-agent manifests to infer working/blocked/done. Run
52
+ `tmux-ide agent explain <pane>` to see exactly which layer fired for a pane and why.
137
53
 
138
- ### Team lead self-configuration
54
+ ### Coordinating with other agents
139
55
 
140
- When running as the team lead inside a tmux-ide session, you can reconfigure the layout for the team:
56
+ The status bus is shared, so you can work as part of a team — and the teammates
57
+ don't have to be Claude Code. As an agent, you can:
141
58
 
142
59
  ```bash
143
- # Read current config
144
- tmux-ide config --json
145
-
146
- # Add a new teammate pane
147
- tmux-ide config add-pane --row 0 --title "Reviewer" --command "claude"
148
- tmux-ide config set rows.0.panes.3.role teammate
149
- tmux-ide config set rows.0.panes.3.task "Review all PRs and check for issues"
60
+ tmux-ide team --json # fleet rollup: each session's + window's agent status
61
+ tmux-ide agent explain %2 --json # one specific pane's status + why (per-pane read)
62
+ tmux-ide send %2 "do X, then run tests" # task another pane's agent (by %id, title, role, or @ide_name)
63
+ tmux-ide wait output %2 --match "done" # block until that pane prints something (exit 0 match / 1 timeout)
64
+ tmux-ide wait agent-status api --status done # block until a whole session finishes
65
+ tmux-ide events --follow # subscribe to the live session-status transition stream
66
+ ```
150
67
 
151
- # Or remove a teammate
152
- tmux-ide config remove-pane --row 0 --pane 2
68
+ `send` types straight into the target agent's prompt (use `--no-enter` to stage
69
+ text; pipe stdin for long input — messages over ~150 chars auto-route through a
70
+ `.tasks/dispatch/` file). Report your own status with the `@agent_state` contract
71
+ above so teammates coordinating on you see the truth. This works across
72
+ Claude Code, codex, cursor-agent, aider, or any CLI agent in a pane.
153
73
 
154
- # Validate and restart to apply
155
- tmux-ide validate --json
156
- tmux-ide restart
157
- ```
74
+ ## Fleet control from the CLI
158
75
 
159
- ### Disable teams
76
+ Every command takes `--json` for structured output.
160
77
 
161
78
  ```bash
162
- tmux-ide config disable-team
163
- ```
79
+ tmux-ide team --json # whole-fleet state: sessions, panes, agent statuses
80
+ tmux-ide events --follow # stream agent-status transitions (needs an adopted session)
81
+ tmux-ide events --json # recent transitions as JSON
164
82
 
165
- Removes the `team` config and all `role`/`task` fields from panes.
83
+ tmux-ide wait agent-status <session> --status blocked --timeout 60000 # block until a session hits a status
84
+ tmux-ide wait output <pane|session> --match "<regex>" --timeout 60000 # block until a pane's output matches
166
85
 
167
- ## Session features (v1.2.0)
86
+ tmux-ide send <target> "<message>" # send text to a pane (by name/title/role/ID); --to <name>, --no-enter
87
+ tmux-ide agent explain <pane> --json # debug how a pane's agent state was detected
168
88
 
169
- tmux-ide sessions include these built-in features:
89
+ tmux-ide adopt <session> # add the dock to an existing session (additive tmux config)
90
+ tmux-ide adopt --all # adopt every live session
91
+ tmux-ide unadopt <session> # remove the dock — sessions keep running as plain tmux
170
92
 
171
- ### Mouse support
93
+ tmux-ide restore --dry-run --json # preview rebuilding the fleet from the last snapshot
94
+ tmux-ide restore --resume-agents # rebuild after a tmux crash; revive Claude convos via claude --resume
172
95
 
173
- Mouse is enabled by default. Users can click to focus panes, scroll with trackpad, and drag pane borders to resize.
96
+ tmux-ide worktree create <branch> --from <ref> # git worktree on a new branch + a session in it
97
+ tmux-ide worktree open <branch> # open/switch to an existing worktree's session
98
+ tmux-ide worktree list --json # worktrees joined with their session status
99
+ tmux-ide worktree remove <branch> --force # kill the session + remove the worktree
174
100
 
175
- ### Two-line status bar
176
-
177
- ```
178
- Line 0: MY-PROJECT IDE ● 14:30 │ Mar 17
179
- Line 1: ⏺ Claude 1 │ ● Claude 2 │ ⏺ Dev Server │ Shell
101
+ tmux-ide update --dry-run # detect install method (dev checkout vs npm/pnpm/bun) and show/run the update
102
+ tmux-ide doctor # system + integration health (tmux version, TUI surfaces, skill freshness)
180
103
  ```
181
104
 
182
- - Line 0: session name, window indicators, time/date
183
- - Line 1: clickable pane tabs (click to switch panes)
184
- - Green `⏺` next to panes with a running dev server (listening TCP port)
185
- - Pulsing `⏺` next to panes where Claude/Codex is actively working
186
- - Dim `●` next to panes where Claude/Codex is idle
105
+ ## Keys & surfaces to tell USERS about
187
106
 
188
- ### Config drift detection
107
+ Once a session is adopted, the whole UI is a keystroke away. **Lead with the
108
+ prefix** — an agent pane can temporarily change key encoding and swallow a
109
+ root-table `Alt` bind, but the tmux prefix always reaches tmux. Every surface has
110
+ a prefix twin and an `⌥` fast-path (single keystroke when the terminal allows it).
111
+ Right-click any pane or the bar opens the actions menu at the pointer.
189
112
 
190
- If `ide.yml` is edited while a session is running, `tmux-ide` warns the user and suggests `tmux-ide restart` to apply changes.
113
+ | Surface | Prefix (always works) | ⌥ fast-path |
114
+ | ------------------------------------------ | --------------------- | -------------- |
115
+ | Home cockpit — fleet tree, detail, preview | `prefix h` | `⌥h` |
116
+ | Switch session | `prefix j` | `⌥p` |
117
+ | Cheat sheet — every key on one page | `prefix k` | `⌥k` |
118
+ | Actions menu (or right-click) | `prefix u` | `⌥m` |
119
+ | Sidebar — fleet nav column | `prefix b` | `⌥b` |
120
+ | Panels — explorer / changes / config | `prefix e` `g` `v` | `⌥e` `⌥g` `⌥,` |
191
121
 
192
- ### Debugging
122
+ One interaction grammar everywhere: `j`/`k` move, `enter` opens, `/` filters,
123
+ `esc` backs out, `?` asks. Bare `tmux-ide` with no `ide.yml` opens the **home
124
+ cockpit** (the fleet home screen). `tmux-ide cheatsheet` prints the full sheet.
193
125
 
194
- ```bash
195
- tmux-ide --verbose # Log all tmux commands to stderr
196
- TMUX_IDE_DEBUG=1 tmux-ide # Same via env var
197
- ```
126
+ ## ide.yml (optional)
198
127
 
199
- ## Programmatic CLI
128
+ Adopt works on any session. If you'd rather have tmux-ide build the layout, describe
129
+ it in `ide.yml` (sessions launched from a config are adopted automatically).
200
130
 
201
- All commands support `--json` for structured output.
131
+ **Setup workflow for a user's project:**
202
132
 
203
- ### Read commands
133
+ 1. Check state: `tmux-ide status --json`
134
+ 2. Detect the stack: `tmux-ide detect --json`
135
+ 3. **Present 2-3 layout options as ASCII diagrams** before writing config:
204
136
 
205
- ```bash
206
- tmux-ide status --json # Session status
207
- tmux-ide validate --json # Validate config
208
- tmux-ide detect --json # Detect project stack
209
- tmux-ide config --json # Dump config as JSON
210
- tmux-ide ls --json # List sessions
211
- tmux-ide doctor --json # System health check
212
- ```
137
+ **Option A — Claude + Dev (recommended)**
213
138
 
214
- ### Write commands
215
-
216
- ```bash
217
- tmux-ide detect --write # Detect and write config
218
- tmux-ide config set name "my-app" # Set config value by dot path
219
- tmux-ide config set rows.0.size "70%"
220
- tmux-ide config add-pane --row 0 --title "Claude" --command "claude"
221
- tmux-ide config remove-pane --row 1 --pane 2
222
- tmux-ide config add-row --size "30%"
223
- tmux-ide config enable-team --name "my-team" # Enable agent teams
224
- tmux-ide config disable-team # Disable agent teams
225
- ```
139
+ ```
140
+ ┌─────────────────────────────────────┐
141
+ │ Claude │ 70%
142
+ ├──────────┬──────────┬──────────────┤
143
+ │ Dev Srv │ Tests │ Shell │ 30%
144
+ └──────────┴──────────┴──────────────┘
145
+ ```
226
146
 
227
- ### Session commands
147
+ **Option B — Dual Claude**
228
148
 
229
- ```bash
230
- tmux-ide # Launch (or re-launch) IDE
231
- tmux-ide stop # Kill session
232
- tmux-ide restart # Stop and relaunch
233
- tmux-ide attach # Reattach
234
- tmux-ide init # Scaffold config
235
- tmux-ide --verbose # Launch with tmux command tracing
236
- ```
149
+ ```
150
+ ┌─────────────────┬─────────────────┐
151
+ │ Claude 1 │ Claude 2 │ 70%
152
+ ├────────┬────────┴───────┬─────────┤
153
+ │Dev Srv │ Tests │ Shell │ 30%
154
+ └────────┴────────────────┴─────────┘
155
+ ```
237
156
 
238
- ## Modification workflow
157
+ **Option C — Explorer + Claude + Changes (widget panes)**
239
158
 
240
- 1. Read: `tmux-ide config --json`
241
- 2. Modify: `tmux-ide config set <path> <value>` or `add-pane`/`remove-pane`
242
- 3. Validate: `tmux-ide validate --json`
243
- 4. Apply: `tmux-ide restart` (needed if session is already running)
159
+ ```
160
+ ┌──────────┬───────────────┬─────────┐
161
+ │ Explorer │ Claude │ Changes │ 100%
162
+ │ (widget) │ │ (widget)│
163
+ └──────────┴───────────────┴─────────┘
164
+ ```
244
165
 
245
- ## Best practices
166
+ Adapt pane names/commands to the detected stack (`pnpm dev`, `cargo watch`, …).
246
167
 
247
- - Always use `--json` for programmatic access
248
- - Always run `validate --json` after config mutations
249
- - Top row ~70% height for Claude panes
250
- - 2-3 Claude panes in the top row (or lead + 2 teammates for teams)
251
- - Dev servers + shell in the bottom row
252
- - Use `detect --json` first to understand the project stack
253
- - For agent teams: assign specific tasks to teammate panes so your prompts stay focused
254
- - The team lead should have `focus: true` for easy access
255
- - Use `tmux-ide --verbose` or `TMUX_IDE_DEBUG=1` when debugging layout issues
168
+ 4. Write it — quick path `tmux-ide detect --write`, or build with the config CLI:
169
+ ```bash
170
+ tmux-ide config add-row --size 70%
171
+ tmux-ide config add-pane --row 0 --title Claude --command claude
172
+ tmux-ide config add-row --size 30%
173
+ tmux-ide config add-pane --row 1 --title "Dev Server" --command "pnpm dev"
174
+ tmux-ide config add-pane --row 1 --title Shell
175
+ tmux-ide validate --json # always validate after mutations
176
+ ```
256
177
 
257
- ## ide.yml format
178
+ **Schema:**
258
179
 
259
180
  ```yaml
260
- name: project-name
261
- before: pnpm install # optional pre-launch hook
262
- team: # optional agent team config
263
- name: my-team
181
+ name: my-app # tmux session name
182
+ sidebar: true # inject the nav column at launch (prefix b / ⌥b); or { width: "30" }
183
+ before: pnpm install # optional pre-launch shell hook
184
+ theme: # optional per-session pane colors
185
+ accent: colour75
186
+ border: colour238
264
187
  rows:
265
- - size: 70%
188
+ - size: 70% # row height percent (rows split evenly if omitted)
266
189
  panes:
267
- - title: Lead
268
- command: claude
269
- role: lead # optional layout metadata: "lead" or "teammate"
270
- focus: true
271
- - title: Teammate 1
272
- command: claude
273
- role: teammate
274
- task: "Work on frontend" # suggested task text for your prompts
275
- - title: Teammate 2
276
- command: claude
277
- role: teammate
278
- task: "Work on backend"
190
+ - title: Claude # pane border label
191
+ command: claude # command to run (optional)
192
+ size: 50% # pane width percent (optional)
193
+ dir: apps/web # per-pane working directory (optional)
194
+ focus: true # initial focus (optional)
195
+ env: # environment variables (optional)
196
+ PORT: "3000"
279
197
  - panes:
280
- - title: Dev Server
281
- command: pnpm dev
282
- dir: apps/web # per-pane working directory
283
- env:
284
- PORT: 3000
198
+ - title: Explorer
199
+ type: explorer # widget pane: explorer | changes | preview | config
200
+ target: src/ # optional widget target path
285
201
  - title: Shell
286
- theme:
287
- accent: colour75
288
- border: colour238
289
202
  ```
203
+
204
+ Read config with `tmux-ide config --json`; mutate with `config set <dot.path> <value>`,
205
+ `add-pane`, `remove-pane`, `add-row`; apply changes to a running session with
206
+ `tmux-ide restart`.
207
+
208
+ An optional mission/goal/task orchestrator exists as a **secondary** surface,
209
+ configured via the `team` and `orchestrator` blocks in `ide.yml` (enable teams
210
+ with `tmux-ide config enable-team --name <n>`). It's not the headline — see the
211
+ Task System docs if a user explicitly wants coordinated multi-agent dispatch.
212
+
213
+ ## Config — ~/.tmux-ide/config.json
214
+
215
+ The one product-wide config (override path with `TMUX_IDE_CONFIG`). A deep
216
+ partial merge over defaults — any block or field you omit falls back:
217
+
218
+ ```jsonc
219
+ {
220
+ "keys": {
221
+ "home": "M-h",
222
+ "popup": "M-p",
223
+ "cheatsheet": "M-k",
224
+ "menu": "M-m",
225
+ "sidebar": "M-b",
226
+ "panels": { "explorer": "M-e", "changes": "M-g", "config": "M-," },
227
+ },
228
+ "theme": {
229
+ "accent": "colour75",
230
+ "muted": "colour240",
231
+ "fg": "colour250",
232
+ "status": {
233
+ "blocked": "colour203",
234
+ "working": "colour221",
235
+ "done": "colour111",
236
+ "idle": "colour114",
237
+ "unknown": "colour244",
238
+ },
239
+ "glyphs": { "active": "●", "inactive": "○" },
240
+ },
241
+ "notifications": { "toast": true, "macos": false },
242
+ "restore": { "resumeAgents": false },
243
+ "updates": { "check": true },
244
+ "integrations": { "offer": true },
245
+ }
246
+ ```
247
+
248
+ One palette + one keymap drive every surface (status bar, chips, menu, cheat
249
+ sheet, and the OpenTUI widgets), so re-theming the whole product is a one-file
250
+ edit plus a re-adopt.
251
+
252
+ ## Keeping this skill current
253
+
254
+ This file is managed — installs and `tmux-ide update` (dev checkouts) refresh the
255
+ copy under `~/.claude/skills/tmux-ide`. To refresh it manually at any time, run
256
+ `tmux-ide skill-sync`. `tmux-ide doctor` reports when the installed copy is stale.
@@ -1 +0,0 @@
1
- <!DOCTYPE html><!--BDqbxLkiJrlXDfMXNb3cK--><html lang="en" class="ibm_plex_mono_3af83e03-module__xSMCQa__variable"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/4a46ad186a8587ee.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/b417aa09c15f63c6.js"/><script src="/_next/static/chunks/4b965aa320a9b358.js" async=""></script><script src="/_next/static/chunks/3e6d4834e0752f76.js" async=""></script><script src="/_next/static/chunks/96aff410a6ab106c.js" async=""></script><script src="/_next/static/chunks/db550aabce60b912.js" async=""></script><script src="/_next/static/chunks/turbopack-2f5dec4a537c0ee7.js" async=""></script><script src="/_next/static/chunks/290f67a6cd150a98.js" async=""></script><script src="/_next/static/chunks/5e49b008432770f1.js" async=""></script><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><title>404: This page could not be found.</title><title>tmux-ide</title><meta name="description" content="Command center for tmux-ide"/><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body class="min-h-screen bg-[var(--bg)] text-[var(--fg)] antialiased text-[13px] leading-[1.5]" style="font-family:var(--font-mono), ui-monospace, monospace"><div hidden=""><!--$--><!--/$--></div><script>((a,b,c,d,e,f,g,h)=>{let i=document.documentElement,j=["light","dark"];function k(b){var c;(Array.isArray(a)?a:[a]).forEach(a=>{let c="class"===a,d=c&&f?e.map(a=>f[a]||a):e;c?(i.classList.remove(...d),i.classList.add(f&&f[b]?f[b]:b)):i.setAttribute(a,b)}),c=b,h&&j.includes(c)&&(i.style.colorScheme=c)}if(d)k(d);else try{let a=localStorage.getItem(b)||c,d=g&&"system"===a?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":a;k(d)}catch(a){}})("data-theme","theme","dark",null,["light","dark"],null,true,true)</script><div class="h-6 flex items-center px-3 bg-[var(--bg-weak)] border-b text-[11px] sticky top-0 z-30"><span class="text-[var(--accent)] font-medium">tmux-ide</span><span class="flex-1"></span><span class="w-4"></span><span class="text-[var(--dim)] ml-3"></span></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/b417aa09c15f63c6.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[77198,[\"/_next/static/chunks/290f67a6cd150a98.js\",\"/_next/static/chunks/5e49b008432770f1.js\"],\"Providers\"]\n3:I[49429,[\"/_next/static/chunks/290f67a6cd150a98.js\",\"/_next/static/chunks/5e49b008432770f1.js\"],\"TopBar\"]\n4:I[76277,[\"/_next/static/chunks/290f67a6cd150a98.js\",\"/_next/static/chunks/5e49b008432770f1.js\"],\"default\"]\n5:I[92511,[\"/_next/static/chunks/290f67a6cd150a98.js\",\"/_next/static/chunks/5e49b008432770f1.js\"],\"default\"]\n6:I[13013,[\"/_next/static/chunks/290f67a6cd150a98.js\",\"/_next/static/chunks/5e49b008432770f1.js\"],\"OutletBoundary\"]\n7:\"$Sreact.suspense\"\n9:I[13013,[\"/_next/static/chunks/290f67a6cd150a98.js\",\"/_next/static/chunks/5e49b008432770f1.js\"],\"ViewportBoundary\"]\nb:I[13013,[\"/_next/static/chunks/290f67a6cd150a98.js\",\"/_next/static/chunks/5e49b008432770f1.js\"],\"MetadataBoundary\"]\nd:I[38848,[\"/_next/static/chunks/290f67a6cd150a98.js\",\"/_next/static/chunks/5e49b008432770f1.js\"],\"default\"]\n:HL[\"/_next/static/chunks/4a46ad186a8587ee.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"BDqbxLkiJrlXDfMXNb3cK\",\"c\":[\"\",\"_not-found\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/4a46ad186a8587ee.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/290f67a6cd150a98.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/5e49b008432770f1.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"ibm_plex_mono_3af83e03-module__xSMCQa__variable\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"className\":\"min-h-screen bg-[var(--bg)] text-[var(--fg)] antialiased text-[13px] leading-[1.5]\",\"style\":{\"fontFamily\":\"var(--font-mono), ui-monospace, monospace\"},\"children\":[\"$\",\"$L2\",null,{\"children\":[[\"$\",\"$L3\",null,{}],[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:1:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:1:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:1:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:1:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L6\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@8\"}]}]]}],{},null,false,false]},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L9\",null,{\"children\":\"$La\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lb\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lc\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$d\",\"$undefined\"],\"S\":true}\n"])</script><script>self.__next_f.push([1,"a:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"8:null\nc:[[\"$\",\"title\",\"0\",{\"children\":\"tmux-ide\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Command center for tmux-ide\"}]]\n"])</script></body></html>
@@ -1 +0,0 @@
1
- <!DOCTYPE html><!--BDqbxLkiJrlXDfMXNb3cK--><html lang="en" class="ibm_plex_mono_3af83e03-module__xSMCQa__variable"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/chunks/4a46ad186a8587ee.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/b417aa09c15f63c6.js"/><script src="/_next/static/chunks/4b965aa320a9b358.js" async=""></script><script src="/_next/static/chunks/3e6d4834e0752f76.js" async=""></script><script src="/_next/static/chunks/96aff410a6ab106c.js" async=""></script><script src="/_next/static/chunks/db550aabce60b912.js" async=""></script><script src="/_next/static/chunks/turbopack-2f5dec4a537c0ee7.js" async=""></script><script src="/_next/static/chunks/290f67a6cd150a98.js" async=""></script><script src="/_next/static/chunks/5e49b008432770f1.js" async=""></script><meta name="robots" content="noindex"/><meta name="next-size-adjust" content=""/><title>404: This page could not be found.</title><title>tmux-ide</title><meta name="description" content="Command center for tmux-ide"/><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body class="min-h-screen bg-[var(--bg)] text-[var(--fg)] antialiased text-[13px] leading-[1.5]" style="font-family:var(--font-mono), ui-monospace, monospace"><div hidden=""><!--$--><!--/$--></div><script>((a,b,c,d,e,f,g,h)=>{let i=document.documentElement,j=["light","dark"];function k(b){var c;(Array.isArray(a)?a:[a]).forEach(a=>{let c="class"===a,d=c&&f?e.map(a=>f[a]||a):e;c?(i.classList.remove(...d),i.classList.add(f&&f[b]?f[b]:b)):i.setAttribute(a,b)}),c=b,h&&j.includes(c)&&(i.style.colorScheme=c)}if(d)k(d);else try{let a=localStorage.getItem(b)||c,d=g&&"system"===a?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":a;k(d)}catch(a){}})("data-theme","theme","dark",null,["light","dark"],null,true,true)</script><div class="h-6 flex items-center px-3 bg-[var(--bg-weak)] border-b text-[11px] sticky top-0 z-30"><span class="text-[var(--accent)] font-medium">tmux-ide</span><span class="flex-1"></span><span class="w-4"></span><span class="text-[var(--dim)] ml-3"></span></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/b417aa09c15f63c6.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[77198,[\"/_next/static/chunks/290f67a6cd150a98.js\",\"/_next/static/chunks/5e49b008432770f1.js\"],\"Providers\"]\n3:I[49429,[\"/_next/static/chunks/290f67a6cd150a98.js\",\"/_next/static/chunks/5e49b008432770f1.js\"],\"TopBar\"]\n4:I[76277,[\"/_next/static/chunks/290f67a6cd150a98.js\",\"/_next/static/chunks/5e49b008432770f1.js\"],\"default\"]\n5:I[92511,[\"/_next/static/chunks/290f67a6cd150a98.js\",\"/_next/static/chunks/5e49b008432770f1.js\"],\"default\"]\n6:I[13013,[\"/_next/static/chunks/290f67a6cd150a98.js\",\"/_next/static/chunks/5e49b008432770f1.js\"],\"OutletBoundary\"]\n7:\"$Sreact.suspense\"\n9:I[13013,[\"/_next/static/chunks/290f67a6cd150a98.js\",\"/_next/static/chunks/5e49b008432770f1.js\"],\"ViewportBoundary\"]\nb:I[13013,[\"/_next/static/chunks/290f67a6cd150a98.js\",\"/_next/static/chunks/5e49b008432770f1.js\"],\"MetadataBoundary\"]\nd:I[38848,[\"/_next/static/chunks/290f67a6cd150a98.js\",\"/_next/static/chunks/5e49b008432770f1.js\"],\"default\"]\n:HL[\"/_next/static/chunks/4a46ad186a8587ee.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"BDqbxLkiJrlXDfMXNb3cK\",\"c\":[\"\",\"_not-found\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/4a46ad186a8587ee.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/290f67a6cd150a98.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/5e49b008432770f1.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"ibm_plex_mono_3af83e03-module__xSMCQa__variable\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"className\":\"min-h-screen bg-[var(--bg)] text-[var(--fg)] antialiased text-[13px] leading-[1.5]\",\"style\":{\"fontFamily\":\"var(--font-mono), ui-monospace, monospace\"},\"children\":[\"$\",\"$L2\",null,{\"children\":[[\"$\",\"$L3\",null,{}],[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]}]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L4\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:1:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:1:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:1:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:props:children:props:children:1:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L6\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@8\"}]}]]}],{},null,false,false]},null,false,false]},null,false,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[\"$\",\"$L9\",null,{\"children\":\"$La\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lb\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lc\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$d\",\"$undefined\"],\"S\":true}\n"])</script><script>self.__next_f.push([1,"a:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"8:null\nc:[[\"$\",\"title\",\"0\",{\"children\":\"tmux-ide\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Command center for tmux-ide\"}]]\n"])</script></body></html>
@@ -1,9 +0,0 @@
1
- 1:"$Sreact.fragment"
2
- 2:I[94575,["/_next/static/chunks/c322b8005eebc0d8.js","/_next/static/chunks/5e49b008432770f1.js"],"ClientPageRoot"]
3
- 3:I[77851,["/_next/static/chunks/d6a6c75c9a4bef49.js","/_next/static/chunks/c6f820f71162a59a.js"],"default"]
4
- 6:I[13013,["/_next/static/chunks/c322b8005eebc0d8.js","/_next/static/chunks/5e49b008432770f1.js"],"OutletBoundary"]
5
- 7:"$Sreact.suspense"
6
- 0:{"buildId":"BDqbxLkiJrlXDfMXNb3cK","rsc":["$","$1","c",{"children":[["$","$L2",null,{"Component":"$3","serverProvidedParams":{"searchParams":{},"params":{},"promises":["$@4","$@5"]}}],[["$","script","script-0",{"src":"/_next/static/chunks/c6f820f71162a59a.js","async":true}]],["$","$L6",null,{"children":["$","$7",null,{"name":"Next.MetadataOutlet","children":"$@8"}]}]]}],"loading":null,"isPartial":false}
7
- 4:{}
8
- 5:"$0:rsc:props:children:0:props:serverProvidedParams:params"
9
- 8:null
@@ -1,21 +0,0 @@
1
- 1:"$Sreact.fragment"
2
- 2:I[77198,["/_next/static/chunks/d6a6c75c9a4bef49.js"],"Providers"]
3
- 3:I[49429,["/_next/static/chunks/d6a6c75c9a4bef49.js"],"TopBar"]
4
- 4:I[76277,["/_next/static/chunks/c322b8005eebc0d8.js","/_next/static/chunks/5e49b008432770f1.js"],"default"]
5
- 5:I[92511,["/_next/static/chunks/c322b8005eebc0d8.js","/_next/static/chunks/5e49b008432770f1.js"],"default"]
6
- 6:I[94575,["/_next/static/chunks/c322b8005eebc0d8.js","/_next/static/chunks/5e49b008432770f1.js"],"ClientPageRoot"]
7
- 7:I[77851,["/_next/static/chunks/d6a6c75c9a4bef49.js","/_next/static/chunks/c6f820f71162a59a.js"],"default"]
8
- a:I[13013,["/_next/static/chunks/c322b8005eebc0d8.js","/_next/static/chunks/5e49b008432770f1.js"],"OutletBoundary"]
9
- b:"$Sreact.suspense"
10
- d:I[13013,["/_next/static/chunks/c322b8005eebc0d8.js","/_next/static/chunks/5e49b008432770f1.js"],"ViewportBoundary"]
11
- f:I[13013,["/_next/static/chunks/c322b8005eebc0d8.js","/_next/static/chunks/5e49b008432770f1.js"],"MetadataBoundary"]
12
- 11:I[38848,["/_next/static/chunks/c322b8005eebc0d8.js","/_next/static/chunks/5e49b008432770f1.js"],"default"]
13
- :HL["/_next/static/chunks/4a46ad186a8587ee.css","style"]
14
- :HL["/_next/static/media/99e609270109b47d-s.p.64b9304e.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
15
- :HL["/_next/static/media/effe91970fc4db64-s.p.19510058.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
16
- 0:{"P":null,"b":"BDqbxLkiJrlXDfMXNb3cK","c":["",""],"q":"","i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",true],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/4a46ad186a8587ee.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/d6a6c75c9a4bef49.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en","className":"ibm_plex_mono_3af83e03-module__xSMCQa__variable","suppressHydrationWarning":true,"children":["$","body",null,{"className":"min-h-screen bg-[var(--bg)] text-[var(--fg)] antialiased text-[13px] leading-[1.5]","style":{"fontFamily":"var(--font-mono), ui-monospace, monospace"},"children":["$","$L2",null,{"children":[["$","$L3",null,{}],["$","$L4",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]]}]}]}]]}],{"children":[["$","$1","c",{"children":[["$","$L6",null,{"Component":"$7","serverProvidedParams":{"searchParams":{},"params":{},"promises":["$@8","$@9"]}}],[["$","script","script-0",{"src":"/_next/static/chunks/c6f820f71162a59a.js","async":true,"nonce":"$undefined"}]],["$","$La",null,{"children":["$","$b",null,{"name":"Next.MetadataOutlet","children":"$@c"}]}]]}],{},null,false,false]},null,false,false],["$","$1","h",{"children":[null,["$","$Ld",null,{"children":"$Le"}],["$","div",null,{"hidden":true,"children":["$","$Lf",null,{"children":["$","$b",null,{"name":"Next.Metadata","children":"$L10"}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],false]],"m":"$undefined","G":["$11",[]],"S":true}
17
- 8:{}
18
- 9:"$0:f:0:1:1:children:0:props:children:0:props:serverProvidedParams:params"
19
- e:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
20
- c:null
21
- 10:[["$","title","0",{"children":"tmux-ide"}],["$","meta","1",{"name":"description","content":"Command center for tmux-ide"}]]
@@ -1,5 +0,0 @@
1
- 1:"$Sreact.fragment"
2
- 2:I[13013,["/_next/static/chunks/c322b8005eebc0d8.js","/_next/static/chunks/5e49b008432770f1.js"],"ViewportBoundary"]
3
- 3:I[13013,["/_next/static/chunks/c322b8005eebc0d8.js","/_next/static/chunks/5e49b008432770f1.js"],"MetadataBoundary"]
4
- 4:"$Sreact.suspense"
5
- 0:{"buildId":"BDqbxLkiJrlXDfMXNb3cK","rsc":["$","$1","h",{"children":[null,["$","$L2",null,{"children":[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]}],["$","div",null,{"hidden":true,"children":["$","$L3",null,{"children":["$","$4",null,{"name":"Next.Metadata","children":[["$","title","0",{"children":"tmux-ide"}],["$","meta","1",{"name":"description","content":"Command center for tmux-ide"}]]}]}]}],["$","meta",null,{"name":"next-size-adjust","content":""}]]}],"loading":null,"isPartial":false}