claude-chrome-parallel 3.0.3 → 3.4.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 (315) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +398 -464
  3. package/assets/demo.svg +278 -173
  4. package/dist/cdp/client.d.ts +60 -2
  5. package/dist/cdp/client.d.ts.map +1 -1
  6. package/dist/cdp/client.js +344 -5
  7. package/dist/cdp/client.js.map +1 -1
  8. package/dist/cdp/connection-pool.d.ts.map +1 -1
  9. package/dist/cdp/connection-pool.js +20 -4
  10. package/dist/cdp/connection-pool.js.map +1 -1
  11. package/dist/chrome/launcher.d.ts +11 -0
  12. package/dist/chrome/launcher.d.ts.map +1 -1
  13. package/dist/chrome/launcher.js +124 -10
  14. package/dist/chrome/launcher.js.map +1 -1
  15. package/dist/chrome/pool.d.ts +54 -0
  16. package/dist/chrome/pool.d.ts.map +1 -0
  17. package/dist/chrome/pool.js +301 -0
  18. package/dist/chrome/pool.js.map +1 -0
  19. package/dist/chrome/profile-detector.d.ts +52 -0
  20. package/dist/chrome/profile-detector.d.ts.map +1 -0
  21. package/dist/chrome/profile-detector.js +246 -0
  22. package/dist/chrome/profile-detector.js.map +1 -0
  23. package/dist/cli/claude-session.js +15 -15
  24. package/dist/cli/index.js +162 -37
  25. package/dist/cli/index.js.map +1 -1
  26. package/dist/cli/update-check.d.ts +9 -0
  27. package/dist/cli/update-check.js +141 -0
  28. package/dist/cli/update-check.js.map +1 -0
  29. package/dist/config/global.d.ts +31 -0
  30. package/dist/config/global.d.ts.map +1 -1
  31. package/dist/config/global.js.map +1 -1
  32. package/dist/dashboard/activity-tracker.d.ts +60 -0
  33. package/dist/dashboard/activity-tracker.d.ts.map +1 -0
  34. package/dist/dashboard/activity-tracker.js +178 -0
  35. package/dist/dashboard/activity-tracker.js.map +1 -0
  36. package/dist/dashboard/ansi.d.ts +117 -0
  37. package/dist/dashboard/ansi.d.ts.map +1 -0
  38. package/dist/dashboard/ansi.js +199 -0
  39. package/dist/dashboard/ansi.js.map +1 -0
  40. package/dist/dashboard/index.d.ts +110 -0
  41. package/dist/dashboard/index.d.ts.map +1 -0
  42. package/dist/dashboard/index.js +412 -0
  43. package/dist/dashboard/index.js.map +1 -0
  44. package/dist/dashboard/keyboard-handler.d.ts +43 -0
  45. package/dist/dashboard/keyboard-handler.d.ts.map +1 -0
  46. package/dist/dashboard/keyboard-handler.js +215 -0
  47. package/dist/dashboard/keyboard-handler.js.map +1 -0
  48. package/dist/dashboard/operation-controller.d.ts +76 -0
  49. package/dist/dashboard/operation-controller.d.ts.map +1 -0
  50. package/dist/dashboard/operation-controller.js +167 -0
  51. package/dist/dashboard/operation-controller.js.map +1 -0
  52. package/dist/dashboard/renderer.d.ts +76 -0
  53. package/dist/dashboard/renderer.d.ts.map +1 -0
  54. package/dist/dashboard/renderer.js +193 -0
  55. package/dist/dashboard/renderer.js.map +1 -0
  56. package/dist/dashboard/types.d.ts +56 -0
  57. package/dist/dashboard/types.d.ts.map +1 -0
  58. package/dist/dashboard/types.js +12 -0
  59. package/dist/dashboard/types.js.map +1 -0
  60. package/dist/dashboard/views/main-view.d.ts +23 -0
  61. package/dist/dashboard/views/main-view.d.ts.map +1 -0
  62. package/dist/dashboard/views/main-view.js +143 -0
  63. package/dist/dashboard/views/main-view.js.map +1 -0
  64. package/dist/dashboard/views/sessions-view.d.ts +22 -0
  65. package/dist/dashboard/views/sessions-view.d.ts.map +1 -0
  66. package/dist/dashboard/views/sessions-view.js +104 -0
  67. package/dist/dashboard/views/sessions-view.js.map +1 -0
  68. package/dist/dashboard/views/tabs-view.d.ts +21 -0
  69. package/dist/dashboard/views/tabs-view.d.ts.map +1 -0
  70. package/dist/dashboard/views/tabs-view.js +92 -0
  71. package/dist/dashboard/views/tabs-view.js.map +1 -0
  72. package/dist/hints/hint-engine.d.ts +65 -0
  73. package/dist/hints/hint-engine.d.ts.map +1 -0
  74. package/dist/hints/hint-engine.js +156 -0
  75. package/dist/hints/hint-engine.js.map +1 -0
  76. package/dist/hints/index.d.ts +8 -0
  77. package/dist/hints/index.d.ts.map +1 -0
  78. package/dist/hints/index.js +11 -0
  79. package/dist/hints/index.js.map +1 -0
  80. package/dist/hints/pattern-learner.d.ts +76 -0
  81. package/dist/hints/pattern-learner.d.ts.map +1 -0
  82. package/dist/hints/pattern-learner.js +254 -0
  83. package/dist/hints/pattern-learner.js.map +1 -0
  84. package/dist/hints/rules/composite-suggestions.d.ts +6 -0
  85. package/dist/hints/rules/composite-suggestions.d.ts.map +1 -0
  86. package/dist/hints/rules/composite-suggestions.js +66 -0
  87. package/dist/hints/rules/composite-suggestions.js.map +1 -0
  88. package/dist/hints/rules/error-recovery.d.ts +7 -0
  89. package/dist/hints/rules/error-recovery.d.ts.map +1 -0
  90. package/dist/hints/rules/error-recovery.js +47 -0
  91. package/dist/hints/rules/error-recovery.js.map +1 -0
  92. package/dist/hints/rules/learned-rules.d.ts +13 -0
  93. package/dist/hints/rules/learned-rules.d.ts.map +1 -0
  94. package/dist/hints/rules/learned-rules.js +27 -0
  95. package/dist/hints/rules/learned-rules.js.map +1 -0
  96. package/dist/hints/rules/repetition-detection.d.ts +7 -0
  97. package/dist/hints/rules/repetition-detection.d.ts.map +1 -0
  98. package/dist/hints/rules/repetition-detection.js +82 -0
  99. package/dist/hints/rules/repetition-detection.js.map +1 -0
  100. package/dist/hints/rules/sequence-detection.d.ts +6 -0
  101. package/dist/hints/rules/sequence-detection.d.ts.map +1 -0
  102. package/dist/hints/rules/sequence-detection.js +61 -0
  103. package/dist/hints/rules/sequence-detection.js.map +1 -0
  104. package/dist/hints/rules/success-hints.d.ts +6 -0
  105. package/dist/hints/rules/success-hints.d.ts.map +1 -0
  106. package/dist/hints/rules/success-hints.js +62 -0
  107. package/dist/hints/rules/success-hints.js.map +1 -0
  108. package/dist/index.js +190 -55
  109. package/dist/index.js.map +1 -1
  110. package/dist/lightpanda/launcher.d.ts +58 -0
  111. package/dist/lightpanda/launcher.d.ts.map +1 -0
  112. package/dist/lightpanda/launcher.js +199 -0
  113. package/dist/lightpanda/launcher.js.map +1 -0
  114. package/dist/mcp-server.d.ts +38 -1
  115. package/dist/mcp-server.d.ts.map +1 -1
  116. package/dist/mcp-server.js +220 -6
  117. package/dist/mcp-server.js.map +1 -1
  118. package/dist/orchestration/state-manager.js +46 -46
  119. package/dist/orchestration/workflow-engine.d.ts +1 -0
  120. package/dist/orchestration/workflow-engine.d.ts.map +1 -1
  121. package/dist/orchestration/workflow-engine.js +112 -114
  122. package/dist/orchestration/workflow-engine.js.map +1 -1
  123. package/dist/resources/usage-guide.d.ts +13 -0
  124. package/dist/resources/usage-guide.d.ts.map +1 -0
  125. package/dist/resources/usage-guide.js +101 -0
  126. package/dist/resources/usage-guide.js.map +1 -0
  127. package/dist/router/browser-router.d.ts +51 -0
  128. package/dist/router/browser-router.d.ts.map +1 -0
  129. package/dist/router/browser-router.js +178 -0
  130. package/dist/router/browser-router.js.map +1 -0
  131. package/dist/router/cookie-sync.d.ts +48 -0
  132. package/dist/router/cookie-sync.d.ts.map +1 -0
  133. package/dist/router/cookie-sync.js +106 -0
  134. package/dist/router/cookie-sync.js.map +1 -0
  135. package/dist/router/index.d.ts +5 -0
  136. package/dist/router/index.d.ts.map +1 -0
  137. package/dist/router/index.js +10 -0
  138. package/dist/router/index.js.map +1 -0
  139. package/dist/router/tool-routing-registry.d.ts +21 -0
  140. package/dist/router/tool-routing-registry.d.ts.map +1 -0
  141. package/dist/router/tool-routing-registry.js +90 -0
  142. package/dist/router/tool-routing-registry.js.map +1 -0
  143. package/dist/session-manager.d.ts +41 -1
  144. package/dist/session-manager.d.ts.map +1 -1
  145. package/dist/session-manager.js +216 -21
  146. package/dist/session-manager.js.map +1 -1
  147. package/dist/tools/click-element.d.ts +8 -0
  148. package/dist/tools/click-element.d.ts.map +1 -0
  149. package/dist/tools/click-element.js +383 -0
  150. package/dist/tools/click-element.js.map +1 -0
  151. package/dist/tools/computer.d.ts.map +1 -1
  152. package/dist/tools/computer.js +198 -34
  153. package/dist/tools/computer.js.map +1 -1
  154. package/dist/tools/console-capture.d.ts +6 -0
  155. package/dist/tools/console-capture.d.ts.map +1 -0
  156. package/dist/tools/console-capture.js +320 -0
  157. package/dist/tools/console-capture.js.map +1 -0
  158. package/dist/tools/cookies.d.ts +6 -0
  159. package/dist/tools/cookies.d.ts.map +1 -0
  160. package/dist/tools/cookies.js +263 -0
  161. package/dist/tools/cookies.js.map +1 -0
  162. package/dist/tools/drag-drop.d.ts +6 -0
  163. package/dist/tools/drag-drop.d.ts.map +1 -0
  164. package/dist/tools/drag-drop.js +252 -0
  165. package/dist/tools/drag-drop.js.map +1 -0
  166. package/dist/tools/emulate-device.d.ts +6 -0
  167. package/dist/tools/emulate-device.d.ts.map +1 -0
  168. package/dist/tools/emulate-device.js +221 -0
  169. package/dist/tools/emulate-device.js.map +1 -0
  170. package/dist/tools/file-upload.d.ts +6 -0
  171. package/dist/tools/file-upload.d.ts.map +1 -0
  172. package/dist/tools/file-upload.js +208 -0
  173. package/dist/tools/file-upload.js.map +1 -0
  174. package/dist/tools/fill-form.d.ts +8 -0
  175. package/dist/tools/fill-form.d.ts.map +1 -0
  176. package/dist/tools/fill-form.js +342 -0
  177. package/dist/tools/fill-form.js.map +1 -0
  178. package/dist/tools/find.d.ts.map +1 -1
  179. package/dist/tools/find.js +153 -65
  180. package/dist/tools/find.js.map +1 -1
  181. package/dist/tools/form-input.js +52 -52
  182. package/dist/tools/form-input.js.map +1 -1
  183. package/dist/tools/geolocation.d.ts +6 -0
  184. package/dist/tools/geolocation.d.ts.map +1 -0
  185. package/dist/tools/geolocation.js +172 -0
  186. package/dist/tools/geolocation.js.map +1 -0
  187. package/dist/tools/http-auth.d.ts +6 -0
  188. package/dist/tools/http-auth.d.ts.map +1 -0
  189. package/dist/tools/http-auth.js +136 -0
  190. package/dist/tools/http-auth.js.map +1 -0
  191. package/dist/tools/index.d.ts.map +1 -1
  192. package/dist/tools/index.js +50 -0
  193. package/dist/tools/index.js.map +1 -1
  194. package/dist/tools/javascript.js +1 -1
  195. package/dist/tools/javascript.js.map +1 -1
  196. package/dist/tools/navigate.d.ts.map +1 -1
  197. package/dist/tools/navigate.js +5 -2
  198. package/dist/tools/navigate.js.map +1 -1
  199. package/dist/tools/network.js +4 -4
  200. package/dist/tools/network.js.map +1 -1
  201. package/dist/tools/orchestration.d.ts.map +1 -1
  202. package/dist/tools/orchestration.js +13 -8
  203. package/dist/tools/orchestration.js.map +1 -1
  204. package/dist/tools/page-content.d.ts +6 -0
  205. package/dist/tools/page-content.d.ts.map +1 -0
  206. package/dist/tools/page-content.js +120 -0
  207. package/dist/tools/page-content.js.map +1 -0
  208. package/dist/tools/page-pdf.d.ts +6 -0
  209. package/dist/tools/page-pdf.d.ts.map +1 -0
  210. package/dist/tools/page-pdf.js +245 -0
  211. package/dist/tools/page-pdf.js.map +1 -0
  212. package/dist/tools/page-reload.d.ts +6 -0
  213. package/dist/tools/page-reload.d.ts.map +1 -0
  214. package/dist/tools/page-reload.js +89 -0
  215. package/dist/tools/page-reload.js.map +1 -0
  216. package/dist/tools/performance-metrics.d.ts +6 -0
  217. package/dist/tools/performance-metrics.d.ts.map +1 -0
  218. package/dist/tools/performance-metrics.js +158 -0
  219. package/dist/tools/performance-metrics.js.map +1 -0
  220. package/dist/tools/read-page.d.ts.map +1 -1
  221. package/dist/tools/read-page.js +4 -2
  222. package/dist/tools/read-page.js.map +1 -1
  223. package/dist/tools/request-intercept.d.ts +6 -0
  224. package/dist/tools/request-intercept.d.ts.map +1 -0
  225. package/dist/tools/request-intercept.js +439 -0
  226. package/dist/tools/request-intercept.js.map +1 -0
  227. package/dist/tools/selector-query.d.ts +6 -0
  228. package/dist/tools/selector-query.d.ts.map +1 -0
  229. package/dist/tools/selector-query.js +206 -0
  230. package/dist/tools/selector-query.js.map +1 -0
  231. package/dist/tools/storage.d.ts +6 -0
  232. package/dist/tools/storage.d.ts.map +1 -0
  233. package/dist/tools/storage.js +264 -0
  234. package/dist/tools/storage.js.map +1 -0
  235. package/dist/tools/tabs-close.d.ts +6 -0
  236. package/dist/tools/tabs-close.d.ts.map +1 -0
  237. package/dist/tools/tabs-close.js +124 -0
  238. package/dist/tools/tabs-close.js.map +1 -0
  239. package/dist/tools/tabs-context.js +1 -1
  240. package/dist/tools/tabs-context.js.map +1 -1
  241. package/dist/tools/user-agent.d.ts +6 -0
  242. package/dist/tools/user-agent.d.ts.map +1 -0
  243. package/dist/tools/user-agent.js +128 -0
  244. package/dist/tools/user-agent.js.map +1 -0
  245. package/dist/tools/wait-and-click.d.ts +8 -0
  246. package/dist/tools/wait-and-click.d.ts.map +1 -0
  247. package/dist/tools/wait-and-click.js +290 -0
  248. package/dist/tools/wait-and-click.js.map +1 -0
  249. package/dist/tools/wait-for.d.ts +6 -0
  250. package/dist/tools/wait-for.d.ts.map +1 -0
  251. package/dist/tools/wait-for.js +248 -0
  252. package/dist/tools/wait-for.js.map +1 -0
  253. package/dist/tools/xpath-query.d.ts +6 -0
  254. package/dist/tools/xpath-query.d.ts.map +1 -0
  255. package/dist/tools/xpath-query.js +230 -0
  256. package/dist/tools/xpath-query.js.map +1 -0
  257. package/dist/types/browser-backend.d.ts +30 -0
  258. package/dist/types/browser-backend.d.ts.map +1 -0
  259. package/dist/types/browser-backend.js +9 -0
  260. package/dist/types/browser-backend.js.map +1 -0
  261. package/dist/types/profile.d.ts +76 -0
  262. package/dist/types/profile.d.ts.map +1 -0
  263. package/dist/types/profile.js +35 -0
  264. package/dist/types/profile.js.map +1 -0
  265. package/dist/types/session.d.ts +7 -3
  266. package/dist/types/session.d.ts.map +1 -1
  267. package/package.json +78 -75
  268. package/dist/master/index.d.ts +0 -18
  269. package/dist/master/index.d.ts.map +0 -1
  270. package/dist/master/index.js +0 -75
  271. package/dist/master/index.js.map +0 -1
  272. package/dist/master/ipc-server.d.ts +0 -21
  273. package/dist/master/ipc-server.d.ts.map +0 -1
  274. package/dist/master/ipc-server.js +0 -175
  275. package/dist/master/ipc-server.js.map +0 -1
  276. package/dist/master/request-handler.d.ts +0 -17
  277. package/dist/master/request-handler.d.ts.map +0 -1
  278. package/dist/master/request-handler.js +0 -134
  279. package/dist/master/request-handler.js.map +0 -1
  280. package/dist/master/session-registry.d.ts +0 -120
  281. package/dist/master/session-registry.d.ts.map +0 -1
  282. package/dist/master/session-registry.js +0 -247
  283. package/dist/master/session-registry.js.map +0 -1
  284. package/dist/shared/ipc-constants.d.ts +0 -16
  285. package/dist/shared/ipc-constants.d.ts.map +0 -1
  286. package/dist/shared/ipc-constants.js +0 -66
  287. package/dist/shared/ipc-constants.js.map +0 -1
  288. package/dist/shared/ipc-protocol.d.ts +0 -33
  289. package/dist/shared/ipc-protocol.d.ts.map +0 -1
  290. package/dist/shared/ipc-protocol.js +0 -20
  291. package/dist/shared/ipc-protocol.js.map +0 -1
  292. package/dist/worker/auto-master.d.ts +0 -24
  293. package/dist/worker/auto-master.d.ts.map +0 -1
  294. package/dist/worker/auto-master.js +0 -135
  295. package/dist/worker/auto-master.js.map +0 -1
  296. package/dist/worker/index.d.ts +0 -25
  297. package/dist/worker/index.d.ts.map +0 -1
  298. package/dist/worker/index.js +0 -93
  299. package/dist/worker/index.js.map +0 -1
  300. package/dist/worker/ipc-client.d.ts +0 -26
  301. package/dist/worker/ipc-client.d.ts.map +0 -1
  302. package/dist/worker/ipc-client.js +0 -211
  303. package/dist/worker/ipc-client.js.map +0 -1
  304. package/dist/worker/remote-session-manager.d.ts +0 -114
  305. package/dist/worker/remote-session-manager.d.ts.map +0 -1
  306. package/dist/worker/remote-session-manager.js +0 -151
  307. package/dist/worker/remote-session-manager.js.map +0 -1
  308. package/dist/worker/tools.d.ts +0 -7
  309. package/dist/worker/tools.d.ts.map +0 -1
  310. package/dist/worker/tools.js +0 -340
  311. package/dist/worker/tools.js.map +0 -1
  312. package/dist/worker/worker-mcp-server.d.ts +0 -70
  313. package/dist/worker/worker-mcp-server.d.ts.map +0 -1
  314. package/dist/worker/worker-mcp-server.js +0 -295
  315. package/dist/worker/worker-mcp-server.js.map +0 -1
@@ -0,0 +1,117 @@
1
+ /**
2
+ * ANSI Escape Codes for Terminal Control
3
+ */
4
+ export declare const ANSI: {
5
+ clear: string;
6
+ clearLine: string;
7
+ clearToEnd: string;
8
+ home: string;
9
+ hideCursor: string;
10
+ showCursor: string;
11
+ saveCursor: string;
12
+ restoreCursor: string;
13
+ bold: string;
14
+ dim: string;
15
+ italic: string;
16
+ underline: string;
17
+ blink: string;
18
+ inverse: string;
19
+ reset: string;
20
+ black: string;
21
+ red: string;
22
+ green: string;
23
+ yellow: string;
24
+ blue: string;
25
+ magenta: string;
26
+ cyan: string;
27
+ white: string;
28
+ brightBlack: string;
29
+ brightRed: string;
30
+ brightGreen: string;
31
+ brightYellow: string;
32
+ brightBlue: string;
33
+ brightMagenta: string;
34
+ brightCyan: string;
35
+ brightWhite: string;
36
+ bgBlack: string;
37
+ bgRed: string;
38
+ bgGreen: string;
39
+ bgYellow: string;
40
+ bgBlue: string;
41
+ bgMagenta: string;
42
+ bgCyan: string;
43
+ bgWhite: string;
44
+ };
45
+ /**
46
+ * Move cursor to specific position (1-indexed)
47
+ */
48
+ export declare function moveTo(row: number, col: number): string;
49
+ /**
50
+ * Move cursor up N lines
51
+ */
52
+ export declare function moveUp(n?: number): string;
53
+ /**
54
+ * Move cursor down N lines
55
+ */
56
+ export declare function moveDown(n?: number): string;
57
+ /**
58
+ * Move cursor right N columns
59
+ */
60
+ export declare function moveRight(n?: number): string;
61
+ /**
62
+ * Move cursor left N columns
63
+ */
64
+ export declare function moveLeft(n?: number): string;
65
+ /**
66
+ * Style text with ANSI codes
67
+ */
68
+ export declare function style(text: string, ...styles: string[]): string;
69
+ /**
70
+ * Truncate string to fit width, adding ellipsis if needed
71
+ */
72
+ export declare function truncate(text: string, maxWidth: number): string;
73
+ /**
74
+ * Pad string to specific width
75
+ */
76
+ export declare function pad(text: string, width: number, align?: 'left' | 'right' | 'center'): string;
77
+ /**
78
+ * Strip ANSI codes from string (for length calculations)
79
+ */
80
+ export declare function stripAnsi(text: string): string;
81
+ /**
82
+ * Create a horizontal line
83
+ */
84
+ export declare function horizontalLine(width: number, char?: string): string;
85
+ /**
86
+ * Create a box border
87
+ */
88
+ export declare const BOX: {
89
+ topLeft: string;
90
+ topRight: string;
91
+ bottomLeft: string;
92
+ bottomRight: string;
93
+ horizontal: string;
94
+ vertical: string;
95
+ teeRight: string;
96
+ teeLeft: string;
97
+ teeDown: string;
98
+ teeUp: string;
99
+ cross: string;
100
+ };
101
+ /**
102
+ * Format duration in ms to human readable string
103
+ */
104
+ export declare function formatDuration(ms: number): string;
105
+ /**
106
+ * Format uptime as HH:MM:SS
107
+ */
108
+ export declare function formatUptime(ms: number): string;
109
+ /**
110
+ * Format bytes to human readable string
111
+ */
112
+ export declare function formatBytes(bytes: number): string;
113
+ /**
114
+ * Format timestamp to HH:MM:SS
115
+ */
116
+ export declare function formatTime(timestamp: number): string;
117
+ //# sourceMappingURL=ansi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ansi.d.ts","sourceRoot":"","sources":["../../src/dashboard/ansi.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmDhB,CAAC;AAEF;;GAEG;AACH,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,GAAE,MAAU,GAAG,MAAM,CAE5C;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,CAAC,GAAE,MAAU,GAAG,MAAM,CAE9C;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,GAAE,MAAU,GAAG,MAAM,CAE/C;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,CAAC,GAAE,MAAU,GAAG,MAAM,CAE9C;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAE/D;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAK/D;AAED;;GAEG;AACH,wBAAgB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,GAAE,MAAM,GAAG,OAAO,GAAG,QAAiB,GAAG,MAAM,CAcpG;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAG9C;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,GAAE,MAAY,GAAG,MAAM,CAExE;AAED;;GAEG;AACH,eAAO,MAAM,GAAG;;;;;;;;;;;;CAYf,CAAC;AAEF;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAUjD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAK/C;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIjD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAGpD"}
@@ -0,0 +1,199 @@
1
+ "use strict";
2
+ /**
3
+ * ANSI Escape Codes for Terminal Control
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.BOX = exports.ANSI = void 0;
7
+ exports.moveTo = moveTo;
8
+ exports.moveUp = moveUp;
9
+ exports.moveDown = moveDown;
10
+ exports.moveRight = moveRight;
11
+ exports.moveLeft = moveLeft;
12
+ exports.style = style;
13
+ exports.truncate = truncate;
14
+ exports.pad = pad;
15
+ exports.stripAnsi = stripAnsi;
16
+ exports.horizontalLine = horizontalLine;
17
+ exports.formatDuration = formatDuration;
18
+ exports.formatUptime = formatUptime;
19
+ exports.formatBytes = formatBytes;
20
+ exports.formatTime = formatTime;
21
+ exports.ANSI = {
22
+ // Screen control
23
+ clear: '\x1b[2J',
24
+ clearLine: '\x1b[2K',
25
+ clearToEnd: '\x1b[0J',
26
+ home: '\x1b[H',
27
+ // Cursor control
28
+ hideCursor: '\x1b[?25l',
29
+ showCursor: '\x1b[?25h',
30
+ saveCursor: '\x1b[s',
31
+ restoreCursor: '\x1b[u',
32
+ // Text styles
33
+ bold: '\x1b[1m',
34
+ dim: '\x1b[2m',
35
+ italic: '\x1b[3m',
36
+ underline: '\x1b[4m',
37
+ blink: '\x1b[5m',
38
+ inverse: '\x1b[7m',
39
+ reset: '\x1b[0m',
40
+ // Foreground colors
41
+ black: '\x1b[30m',
42
+ red: '\x1b[31m',
43
+ green: '\x1b[32m',
44
+ yellow: '\x1b[33m',
45
+ blue: '\x1b[34m',
46
+ magenta: '\x1b[35m',
47
+ cyan: '\x1b[36m',
48
+ white: '\x1b[37m',
49
+ // Bright foreground colors
50
+ brightBlack: '\x1b[90m',
51
+ brightRed: '\x1b[91m',
52
+ brightGreen: '\x1b[92m',
53
+ brightYellow: '\x1b[93m',
54
+ brightBlue: '\x1b[94m',
55
+ brightMagenta: '\x1b[95m',
56
+ brightCyan: '\x1b[96m',
57
+ brightWhite: '\x1b[97m',
58
+ // Background colors
59
+ bgBlack: '\x1b[40m',
60
+ bgRed: '\x1b[41m',
61
+ bgGreen: '\x1b[42m',
62
+ bgYellow: '\x1b[43m',
63
+ bgBlue: '\x1b[44m',
64
+ bgMagenta: '\x1b[45m',
65
+ bgCyan: '\x1b[46m',
66
+ bgWhite: '\x1b[47m',
67
+ };
68
+ /**
69
+ * Move cursor to specific position (1-indexed)
70
+ */
71
+ function moveTo(row, col) {
72
+ return `\x1b[${row};${col}H`;
73
+ }
74
+ /**
75
+ * Move cursor up N lines
76
+ */
77
+ function moveUp(n = 1) {
78
+ return `\x1b[${n}A`;
79
+ }
80
+ /**
81
+ * Move cursor down N lines
82
+ */
83
+ function moveDown(n = 1) {
84
+ return `\x1b[${n}B`;
85
+ }
86
+ /**
87
+ * Move cursor right N columns
88
+ */
89
+ function moveRight(n = 1) {
90
+ return `\x1b[${n}C`;
91
+ }
92
+ /**
93
+ * Move cursor left N columns
94
+ */
95
+ function moveLeft(n = 1) {
96
+ return `\x1b[${n}D`;
97
+ }
98
+ /**
99
+ * Style text with ANSI codes
100
+ */
101
+ function style(text, ...styles) {
102
+ return styles.join('') + text + exports.ANSI.reset;
103
+ }
104
+ /**
105
+ * Truncate string to fit width, adding ellipsis if needed
106
+ */
107
+ function truncate(text, maxWidth) {
108
+ if (text.length <= maxWidth) {
109
+ return text;
110
+ }
111
+ return text.slice(0, maxWidth - 1) + '…';
112
+ }
113
+ /**
114
+ * Pad string to specific width
115
+ */
116
+ function pad(text, width, align = 'left') {
117
+ const visibleLength = stripAnsi(text).length;
118
+ const padding = Math.max(0, width - visibleLength);
119
+ switch (align) {
120
+ case 'right':
121
+ return ' '.repeat(padding) + text;
122
+ case 'center':
123
+ const leftPad = Math.floor(padding / 2);
124
+ const rightPad = padding - leftPad;
125
+ return ' '.repeat(leftPad) + text + ' '.repeat(rightPad);
126
+ default:
127
+ return text + ' '.repeat(padding);
128
+ }
129
+ }
130
+ /**
131
+ * Strip ANSI codes from string (for length calculations)
132
+ */
133
+ function stripAnsi(text) {
134
+ // eslint-disable-next-line no-control-regex
135
+ return text.replace(/\x1b\[[0-9;]*m/g, '');
136
+ }
137
+ /**
138
+ * Create a horizontal line
139
+ */
140
+ function horizontalLine(width, char = '─') {
141
+ return char.repeat(width);
142
+ }
143
+ /**
144
+ * Create a box border
145
+ */
146
+ exports.BOX = {
147
+ topLeft: '┌',
148
+ topRight: '┐',
149
+ bottomLeft: '└',
150
+ bottomRight: '┘',
151
+ horizontal: '─',
152
+ vertical: '│',
153
+ teeRight: '├',
154
+ teeLeft: '┤',
155
+ teeDown: '┬',
156
+ teeUp: '┴',
157
+ cross: '┼',
158
+ };
159
+ /**
160
+ * Format duration in ms to human readable string
161
+ */
162
+ function formatDuration(ms) {
163
+ if (ms < 1000) {
164
+ return `${ms}ms`;
165
+ }
166
+ if (ms < 60000) {
167
+ return `${(ms / 1000).toFixed(1)}s`;
168
+ }
169
+ const minutes = Math.floor(ms / 60000);
170
+ const seconds = Math.floor((ms % 60000) / 1000);
171
+ return `${minutes}:${seconds.toString().padStart(2, '0')}`;
172
+ }
173
+ /**
174
+ * Format uptime as HH:MM:SS
175
+ */
176
+ function formatUptime(ms) {
177
+ const seconds = Math.floor(ms / 1000) % 60;
178
+ const minutes = Math.floor(ms / 60000) % 60;
179
+ const hours = Math.floor(ms / 3600000);
180
+ return `${hours.toString().padStart(2, '0')}:${minutes.toString().padStart(2, '0')}:${seconds.toString().padStart(2, '0')}`;
181
+ }
182
+ /**
183
+ * Format bytes to human readable string
184
+ */
185
+ function formatBytes(bytes) {
186
+ if (bytes < 1024)
187
+ return `${bytes}B`;
188
+ if (bytes < 1024 * 1024)
189
+ return `${(bytes / 1024).toFixed(0)}KB`;
190
+ return `${(bytes / (1024 * 1024)).toFixed(0)}MB`;
191
+ }
192
+ /**
193
+ * Format timestamp to HH:MM:SS
194
+ */
195
+ function formatTime(timestamp) {
196
+ const date = new Date(timestamp);
197
+ return date.toTimeString().slice(0, 8);
198
+ }
199
+ //# sourceMappingURL=ansi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ansi.js","sourceRoot":"","sources":["../../src/dashboard/ansi.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,110 @@
1
+ /**
2
+ * Dashboard - Main controller for the terminal dashboard
3
+ *
4
+ * Provides real-time activity monitoring and control for the MCP server
5
+ */
6
+ import { EventEmitter } from 'events';
7
+ import { ActivityTracker } from './activity-tracker.js';
8
+ import { OperationController } from './operation-controller.js';
9
+ import type { SessionManager } from '../session-manager.js';
10
+ export interface DashboardOptions {
11
+ enabled?: boolean;
12
+ refreshInterval?: number;
13
+ maxLogEntries?: number;
14
+ version?: string;
15
+ }
16
+ export declare class Dashboard extends EventEmitter {
17
+ private renderer;
18
+ private keyboard;
19
+ private activityTracker;
20
+ private operationController;
21
+ private mainView;
22
+ private sessionsView;
23
+ private tabsView;
24
+ private sessionManager;
25
+ private config;
26
+ private version;
27
+ private currentView;
28
+ private selectedIndex;
29
+ private refreshTimer;
30
+ private spinnerFrame;
31
+ private startTime;
32
+ private isRunning;
33
+ constructor(options?: DashboardOptions);
34
+ /**
35
+ * Set the session manager for data access
36
+ */
37
+ setSessionManager(sessionManager: SessionManager): void;
38
+ /**
39
+ * Get the activity tracker for tool call tracking
40
+ */
41
+ getActivityTracker(): ActivityTracker;
42
+ /**
43
+ * Get the operation controller for pause/resume/cancel
44
+ */
45
+ getOperationController(): OperationController;
46
+ /**
47
+ * Start the dashboard
48
+ */
49
+ start(): boolean;
50
+ /**
51
+ * Stop the dashboard
52
+ */
53
+ stop(): void;
54
+ /**
55
+ * Handle keyboard input
56
+ */
57
+ private handleKey;
58
+ private handleMainViewKey;
59
+ private handleSessionsViewKey;
60
+ private handleTabsViewKey;
61
+ /**
62
+ * Cancel the current operation
63
+ */
64
+ private cancelCurrentOperation;
65
+ /**
66
+ * Refresh the display
67
+ */
68
+ private refresh;
69
+ /**
70
+ * Handle activity update event
71
+ */
72
+ private onActivityUpdate;
73
+ /**
74
+ * Get data for main view
75
+ */
76
+ private getMainViewData;
77
+ /**
78
+ * Get data for sessions view
79
+ */
80
+ private getSessionsViewData;
81
+ /**
82
+ * Get data for tabs view
83
+ */
84
+ private getTabsViewData;
85
+ /**
86
+ * Get dashboard stats
87
+ */
88
+ private getStats;
89
+ /**
90
+ * Get session list
91
+ */
92
+ private getSessions;
93
+ /**
94
+ * Get tab list
95
+ */
96
+ private getTabs;
97
+ /**
98
+ * Check if dashboard is running
99
+ */
100
+ get running(): boolean;
101
+ }
102
+ export declare function getDashboard(options?: DashboardOptions): Dashboard;
103
+ export declare function setDashboard(dashboard: Dashboard): void;
104
+ export { ActivityTracker, getActivityTracker, setActivityTracker } from './activity-tracker.js';
105
+ export { OperationController, getOperationController, setOperationController } from './operation-controller.js';
106
+ export { KeyboardHandler, getKeyboardHandler } from './keyboard-handler.js';
107
+ export { Renderer, getRenderer } from './renderer.js';
108
+ export * from './types.js';
109
+ export * from './ansi.js';
110
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dashboard/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAItC,OAAO,EAAE,eAAe,EAAsB,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAA0B,MAAM,2BAA2B,CAAC;AAKxF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,SAAU,SAAQ,YAAY;IACzC,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,mBAAmB,CAAsB;IAEjD,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,QAAQ,CAAW;IAE3B,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,WAAW,CAAwB;IAC3C,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,YAAY,CAAa;IACjC,OAAO,CAAC,SAAS,CAAsB;IACvC,OAAO,CAAC,SAAS,CAAkB;gBAEvB,OAAO,GAAE,gBAAqB;IAqB1C;;OAEG;IACH,iBAAiB,CAAC,cAAc,EAAE,cAAc,GAAG,IAAI;IAIvD;;OAEG;IACH,kBAAkB,IAAI,eAAe;IAIrC;;OAEG;IACH,sBAAsB,IAAI,mBAAmB;IAI7C;;OAEG;IACH,KAAK,IAAI,OAAO;IAqDhB;;OAEG;IACH,IAAI,IAAI,IAAI;IA4BZ;;OAEG;IACH,OAAO,CAAC,SAAS;IAsBjB,OAAO,CAAC,iBAAiB;IAmBzB,OAAO,CAAC,qBAAqB;IAsB7B,OAAO,CAAC,iBAAiB;IAsBzB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAU9B;;OAEG;IACH,OAAO,CAAC,OAAO;IAuBf;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAKxB;;OAEG;IACH,OAAO,CAAC,eAAe;IASvB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAQ3B;;OAEG;IACH,OAAO,CAAC,eAAe;IAQvB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAyBhB;;OAEG;IACH,OAAO,CAAC,WAAW;IAenB;;OAEG;IACH,OAAO,CAAC,OAAO;IA6Bf;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;CACF;AAKD,wBAAgB,YAAY,CAAC,OAAO,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAKlE;AAED,wBAAgB,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI,CAEvD;AAGD,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAChG,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAChH,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACtD,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC"}