@surething/cockpit 1.0.217 → 1.0.219

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 (577) hide show
  1. package/.next-prod/BUILD_ID +1 -1
  2. package/.next-prod/app-path-routes-manifest.json +3 -2
  3. package/.next-prod/build-manifest.json +3 -3
  4. package/.next-prod/prerender-manifest.json +3 -3
  5. package/.next-prod/react-loadable-manifest.json +0 -1
  6. package/.next-prod/routes-manifest.json +6 -0
  7. package/.next-prod/server/app/_global-error/page.js +3 -3
  8. package/.next-prod/server/app/_global-error/page.js.nft.json +1 -1
  9. package/.next-prod/server/app/_global-error/page_client-reference-manifest.js +1 -1
  10. package/.next-prod/server/app/_global-error.html +1 -1
  11. package/.next-prod/server/app/_global-error.rsc +1 -1
  12. package/.next-prod/server/app/_global-error.segments/_full.segment.rsc +1 -1
  13. package/.next-prod/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  14. package/.next-prod/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  15. package/.next-prod/server/app/_global-error.segments/_head.segment.rsc +1 -1
  16. package/.next-prod/server/app/_global-error.segments/_index.segment.rsc +1 -1
  17. package/.next-prod/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  18. package/.next-prod/server/app/_not-found/page.js +2 -2
  19. package/.next-prod/server/app/_not-found/page.js.nft.json +1 -1
  20. package/.next-prod/server/app/_not-found/page_client-reference-manifest.js +1 -1
  21. package/.next-prod/server/app/_not-found.html +1 -1
  22. package/.next-prod/server/app/_not-found.rsc +3 -3
  23. package/.next-prod/server/app/_not-found.segments/_full.segment.rsc +3 -3
  24. package/.next-prod/server/app/_not-found.segments/_head.segment.rsc +1 -1
  25. package/.next-prod/server/app/_not-found.segments/_index.segment.rsc +3 -3
  26. package/.next-prod/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  27. package/.next-prod/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  28. package/.next-prod/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  29. package/.next-prod/server/app/api/agent/test/route.js +1 -1
  30. package/.next-prod/server/app/api/agent/test/route.js.nft.json +1 -1
  31. package/.next-prod/server/app/api/bash/route.js +1 -1
  32. package/.next-prod/server/app/api/bash/route.js.nft.json +1 -1
  33. package/.next-prod/server/app/api/chat/codex/route.js +2 -2
  34. package/.next-prod/server/app/api/chat/codex/route.js.nft.json +1 -1
  35. package/.next-prod/server/app/api/chat/deepseek/route.js +2 -2
  36. package/.next-prod/server/app/api/chat/deepseek/route.js.nft.json +1 -1
  37. package/.next-prod/server/app/api/chat/kimi/route.js +2 -2
  38. package/.next-prod/server/app/api/chat/kimi/route.js.nft.json +1 -1
  39. package/.next-prod/server/app/api/chat/ollama/route.js +2 -2
  40. package/.next-prod/server/app/api/chat/ollama/route.js.nft.json +1 -1
  41. package/.next-prod/server/app/api/chat/pty-input/route.js +1 -0
  42. package/.next-prod/server/app/api/chat/pty-input/route.js.nft.json +1 -0
  43. package/.next-prod/server/app/api/chat/pty-input/route_client-reference-manifest.js +1 -0
  44. package/.next-prod/server/app/api/chat/route.js +19 -3
  45. package/.next-prod/server/app/api/chat/route.js.nft.json +1 -1
  46. package/.next-prod/server/app/api/claude-stats/route.js +1 -1
  47. package/.next-prod/server/app/api/claude-stats/route.js.nft.json +1 -1
  48. package/.next-prod/server/app/api/commands/route.js +1 -1
  49. package/.next-prod/server/app/api/commands/route.js.nft.json +1 -1
  50. package/.next-prod/server/app/api/comments/route.js +1 -1
  51. package/.next-prod/server/app/api/comments/route.js.nft.json +1 -1
  52. package/.next-prod/server/app/api/db/columns/route.js +1 -1
  53. package/.next-prod/server/app/api/db/columns/route.js.nft.json +1 -1
  54. package/.next-prod/server/app/api/db/connect/route.js +1 -1
  55. package/.next-prod/server/app/api/db/connect/route.js.nft.json +1 -1
  56. package/.next-prod/server/app/api/db/disconnect/route.js +1 -1
  57. package/.next-prod/server/app/api/db/disconnect/route.js.nft.json +1 -1
  58. package/.next-prod/server/app/api/db/export/route.js +1 -1
  59. package/.next-prod/server/app/api/db/export/route.js.nft.json +1 -1
  60. package/.next-prod/server/app/api/db/query/route.js +1 -1
  61. package/.next-prod/server/app/api/db/query/route.js.nft.json +1 -1
  62. package/.next-prod/server/app/api/db/schemas/route.js +1 -1
  63. package/.next-prod/server/app/api/db/schemas/route.js.nft.json +1 -1
  64. package/.next-prod/server/app/api/dev/spans/route.js +1 -1
  65. package/.next-prod/server/app/api/dev/spans/route.js.nft.json +1 -1
  66. package/.next-prod/server/app/api/extension/version/route.js +1 -1
  67. package/.next-prod/server/app/api/extension/version/route.js.nft.json +1 -1
  68. package/.next-prod/server/app/api/file/route.js +1 -1
  69. package/.next-prod/server/app/api/file/route.js.nft.json +1 -1
  70. package/.next-prod/server/app/api/files/blame/route.js +1 -1
  71. package/.next-prod/server/app/api/files/blame/route.js.nft.json +1 -1
  72. package/.next-prod/server/app/api/files/clipboard/route.js +1 -1
  73. package/.next-prod/server/app/api/files/clipboard/route.js.nft.json +1 -1
  74. package/.next-prod/server/app/api/files/copy/route.js +1 -1
  75. package/.next-prod/server/app/api/files/copy/route.js.nft.json +1 -1
  76. package/.next-prod/server/app/api/files/delete/route.js +1 -1
  77. package/.next-prod/server/app/api/files/delete/route.js.nft.json +1 -1
  78. package/.next-prod/server/app/api/files/expanded/route.js +1 -1
  79. package/.next-prod/server/app/api/files/expanded/route.js.nft.json +1 -1
  80. package/.next-prod/server/app/api/files/index/route.js +1 -1
  81. package/.next-prod/server/app/api/files/index/route.js.nft.json +1 -1
  82. package/.next-prod/server/app/api/files/init/route.js +1 -1
  83. package/.next-prod/server/app/api/files/init/route.js.nft.json +1 -1
  84. package/.next-prod/server/app/api/files/paste/route.js +1 -1
  85. package/.next-prod/server/app/api/files/paste/route.js.nft.json +1 -1
  86. package/.next-prod/server/app/api/files/read/route.js +1 -1
  87. package/.next-prod/server/app/api/files/read/route.js.nft.json +1 -1
  88. package/.next-prod/server/app/api/files/readdir/route.js +1 -1
  89. package/.next-prod/server/app/api/files/readdir/route.js.nft.json +1 -1
  90. package/.next-prod/server/app/api/files/recent/route.js +1 -1
  91. package/.next-prod/server/app/api/files/recent/route.js.nft.json +1 -1
  92. package/.next-prod/server/app/api/files/save/route.js +1 -1
  93. package/.next-prod/server/app/api/files/save/route.js.nft.json +1 -1
  94. package/.next-prod/server/app/api/files/search/route.js +1 -1
  95. package/.next-prod/server/app/api/files/search/route.js.nft.json +1 -1
  96. package/.next-prod/server/app/api/files/stat/route.js +1 -1
  97. package/.next-prod/server/app/api/files/stat/route.js.nft.json +1 -1
  98. package/.next-prod/server/app/api/files/text/route.js +1 -1
  99. package/.next-prod/server/app/api/files/text/route.js.nft.json +1 -1
  100. package/.next-prod/server/app/api/git/branch-diff/route.js +1 -1
  101. package/.next-prod/server/app/api/git/branch-diff/route.js.nft.json +1 -1
  102. package/.next-prod/server/app/api/git/branches/route.js +1 -1
  103. package/.next-prod/server/app/api/git/branches/route.js.nft.json +1 -1
  104. package/.next-prod/server/app/api/git/commit-diff/route.js +1 -1
  105. package/.next-prod/server/app/api/git/commit-diff/route.js.nft.json +1 -1
  106. package/.next-prod/server/app/api/git/commits/route.js +1 -1
  107. package/.next-prod/server/app/api/git/commits/route.js.nft.json +1 -1
  108. package/.next-prod/server/app/api/git/diff/route.js +1 -1
  109. package/.next-prod/server/app/api/git/diff/route.js.nft.json +1 -1
  110. package/.next-prod/server/app/api/git/discard/route.js +1 -1
  111. package/.next-prod/server/app/api/git/discard/route.js.nft.json +1 -1
  112. package/.next-prod/server/app/api/git/stage/route.js +1 -1
  113. package/.next-prod/server/app/api/git/stage/route.js.nft.json +1 -1
  114. package/.next-prod/server/app/api/git/status/route.js +1 -1
  115. package/.next-prod/server/app/api/git/status/route.js.nft.json +1 -1
  116. package/.next-prod/server/app/api/git/unstage/route.js +1 -1
  117. package/.next-prod/server/app/api/git/unstage/route.js.nft.json +1 -1
  118. package/.next-prod/server/app/api/git/worktree/route.js +1 -1
  119. package/.next-prod/server/app/api/git/worktree/route.js.nft.json +1 -1
  120. package/.next-prod/server/app/api/global-state/route.js +1 -1
  121. package/.next-prod/server/app/api/global-state/route.js.nft.json +1 -1
  122. package/.next-prod/server/app/api/jupyter/load/route.js +1 -1
  123. package/.next-prod/server/app/api/jupyter/load/route.js.nft.json +1 -1
  124. package/.next-prod/server/app/api/jupyter/save/route.js +1 -1
  125. package/.next-prod/server/app/api/jupyter/save/route.js.nft.json +1 -1
  126. package/.next-prod/server/app/api/jupyter/shutdown/route.js +1 -1
  127. package/.next-prod/server/app/api/jupyter/shutdown/route.js.nft.json +1 -1
  128. package/.next-prod/server/app/api/lsp/definition/route.js +1 -1
  129. package/.next-prod/server/app/api/lsp/definition/route.js.nft.json +1 -1
  130. package/.next-prod/server/app/api/lsp/hover/route.js +1 -1
  131. package/.next-prod/server/app/api/lsp/hover/route.js.nft.json +1 -1
  132. package/.next-prod/server/app/api/lsp/references/route.js +1 -1
  133. package/.next-prod/server/app/api/lsp/references/route.js.nft.json +1 -1
  134. package/.next-prod/server/app/api/lsp/status/route.js +1 -1
  135. package/.next-prod/server/app/api/lsp/status/route.js.nft.json +1 -1
  136. package/.next-prod/server/app/api/lsp/warmup/route.js +1 -1
  137. package/.next-prod/server/app/api/lsp/warmup/route.js.nft.json +1 -1
  138. package/.next-prod/server/app/api/mysql/columns/route.js +2 -2
  139. package/.next-prod/server/app/api/mysql/columns/route.js.nft.json +1 -1
  140. package/.next-prod/server/app/api/mysql/connect/route.js +1 -1
  141. package/.next-prod/server/app/api/mysql/connect/route.js.nft.json +1 -1
  142. package/.next-prod/server/app/api/mysql/disconnect/route.js +1 -1
  143. package/.next-prod/server/app/api/mysql/disconnect/route.js.nft.json +1 -1
  144. package/.next-prod/server/app/api/mysql/export/route.js +1 -1
  145. package/.next-prod/server/app/api/mysql/export/route.js.nft.json +1 -1
  146. package/.next-prod/server/app/api/mysql/query/route.js +1 -1
  147. package/.next-prod/server/app/api/mysql/query/route.js.nft.json +1 -1
  148. package/.next-prod/server/app/api/mysql/schemas/route.js +2 -2
  149. package/.next-prod/server/app/api/mysql/schemas/route.js.nft.json +1 -1
  150. package/.next-prod/server/app/api/neo4j/connect/route.js +1 -1
  151. package/.next-prod/server/app/api/neo4j/connect/route.js.nft.json +1 -1
  152. package/.next-prod/server/app/api/neo4j/disconnect/route.js +1 -1
  153. package/.next-prod/server/app/api/neo4j/disconnect/route.js.nft.json +1 -1
  154. package/.next-prod/server/app/api/neo4j/query/route.js +1 -1
  155. package/.next-prod/server/app/api/neo4j/query/route.js.nft.json +1 -1
  156. package/.next-prod/server/app/api/neo4j/schema/route.js +1 -1
  157. package/.next-prod/server/app/api/neo4j/schema/route.js.nft.json +1 -1
  158. package/.next-prod/server/app/api/note/route.js +1 -1
  159. package/.next-prod/server/app/api/note/route.js.nft.json +1 -1
  160. package/.next-prod/server/app/api/ollama/models/route.js +1 -1
  161. package/.next-prod/server/app/api/ollama/models/route.js.nft.json +1 -1
  162. package/.next-prod/server/app/api/ollama/start/route.js +1 -1
  163. package/.next-prod/server/app/api/ollama/start/route.js.nft.json +1 -1
  164. package/.next-prod/server/app/api/open-cursor/route.js +1 -1
  165. package/.next-prod/server/app/api/open-cursor/route.js.nft.json +1 -1
  166. package/.next-prod/server/app/api/open-vscode/route.js +1 -1
  167. package/.next-prod/server/app/api/open-vscode/route.js.nft.json +1 -1
  168. package/.next-prod/server/app/api/pick-folder/route.js +1 -1
  169. package/.next-prod/server/app/api/pick-folder/route.js.nft.json +1 -1
  170. package/.next-prod/server/app/api/pinned-sessions/route.js +1 -1
  171. package/.next-prod/server/app/api/pinned-sessions/route.js.nft.json +1 -1
  172. package/.next-prod/server/app/api/project-settings/route.js +1 -1
  173. package/.next-prod/server/app/api/project-settings/route.js.nft.json +1 -1
  174. package/.next-prod/server/app/api/project-state/route.js +1 -1
  175. package/.next-prod/server/app/api/project-state/route.js.nft.json +1 -1
  176. package/.next-prod/server/app/api/projectGraph/affected/route.js +1 -1
  177. package/.next-prod/server/app/api/projectGraph/affected/route.js.nft.json +1 -1
  178. package/.next-prod/server/app/api/projectGraph/callees/route.js +1 -1
  179. package/.next-prod/server/app/api/projectGraph/callees/route.js.nft.json +1 -1
  180. package/.next-prod/server/app/api/projectGraph/callers/route.js +1 -1
  181. package/.next-prod/server/app/api/projectGraph/callers/route.js.nft.json +1 -1
  182. package/.next-prod/server/app/api/projectGraph/coedit/route.js +1 -1
  183. package/.next-prod/server/app/api/projectGraph/coedit/route.js.nft.json +1 -1
  184. package/.next-prod/server/app/api/projectGraph/context/route.js +1 -1
  185. package/.next-prod/server/app/api/projectGraph/context/route.js.nft.json +1 -1
  186. package/.next-prod/server/app/api/projectGraph/file/route.js +1 -1
  187. package/.next-prod/server/app/api/projectGraph/file/route.js.nft.json +1 -1
  188. package/.next-prod/server/app/api/projectGraph/file-functions/route.js +1 -1
  189. package/.next-prod/server/app/api/projectGraph/file-functions/route.js.nft.json +1 -1
  190. package/.next-prod/server/app/api/projectGraph/impact/route.js +1 -1
  191. package/.next-prod/server/app/api/projectGraph/impact/route.js.nft.json +1 -1
  192. package/.next-prod/server/app/api/projectGraph/related/route.js +1 -1
  193. package/.next-prod/server/app/api/projectGraph/related/route.js.nft.json +1 -1
  194. package/.next-prod/server/app/api/projectGraph/risk/route.js +1 -1
  195. package/.next-prod/server/app/api/projectGraph/risk/route.js.nft.json +1 -1
  196. package/.next-prod/server/app/api/projectGraph/search/route.js +1 -1
  197. package/.next-prod/server/app/api/projectGraph/search/route.js.nft.json +1 -1
  198. package/.next-prod/server/app/api/projects/route.js +1 -1
  199. package/.next-prod/server/app/api/projects/route.js.nft.json +1 -1
  200. package/.next-prod/server/app/api/redis/command/route.js +1 -1
  201. package/.next-prod/server/app/api/redis/command/route.js.nft.json +1 -1
  202. package/.next-prod/server/app/api/redis/connect/route.js +1 -1
  203. package/.next-prod/server/app/api/redis/connect/route.js.nft.json +1 -1
  204. package/.next-prod/server/app/api/redis/delete/route.js +1 -1
  205. package/.next-prod/server/app/api/redis/delete/route.js.nft.json +1 -1
  206. package/.next-prod/server/app/api/redis/disconnect/route.js +1 -1
  207. package/.next-prod/server/app/api/redis/disconnect/route.js.nft.json +1 -1
  208. package/.next-prod/server/app/api/redis/get/route.js +1 -1
  209. package/.next-prod/server/app/api/redis/get/route.js.nft.json +1 -1
  210. package/.next-prod/server/app/api/redis/keys/route.js +1 -1
  211. package/.next-prod/server/app/api/redis/keys/route.js.nft.json +1 -1
  212. package/.next-prod/server/app/api/redis/set/route.js +1 -1
  213. package/.next-prod/server/app/api/redis/set/route.js.nft.json +1 -1
  214. package/.next-prod/server/app/api/review/[id]/comments/route.js +1 -1
  215. package/.next-prod/server/app/api/review/[id]/comments/route.js.nft.json +1 -1
  216. package/.next-prod/server/app/api/review/[id]/replies/route.js +1 -1
  217. package/.next-prod/server/app/api/review/[id]/replies/route.js.nft.json +1 -1
  218. package/.next-prod/server/app/api/review/[id]/route.js +1 -1
  219. package/.next-prod/server/app/api/review/[id]/route.js.nft.json +1 -1
  220. package/.next-prod/server/app/api/review/identify/route.js +1 -1
  221. package/.next-prod/server/app/api/review/identify/route.js.nft.json +1 -1
  222. package/.next-prod/server/app/api/review/order/route.js +1 -1
  223. package/.next-prod/server/app/api/review/order/route.js.nft.json +1 -1
  224. package/.next-prod/server/app/api/review/route.js +1 -1
  225. package/.next-prod/server/app/api/review/route.js.nft.json +1 -1
  226. package/.next-prod/server/app/api/review/share-info/route.js +1 -1
  227. package/.next-prod/server/app/api/review/share-info/route.js.nft.json +1 -1
  228. package/.next-prod/server/app/api/review/users/route.js +1 -1
  229. package/.next-prod/server/app/api/review/users/route.js.nft.json +1 -1
  230. package/.next-prod/server/app/api/scheduled-tasks/route.js +1 -1
  231. package/.next-prod/server/app/api/scheduled-tasks/route.js.nft.json +1 -1
  232. package/.next-prod/server/app/api/services/config/route.js +1 -1
  233. package/.next-prod/server/app/api/services/config/route.js.nft.json +1 -1
  234. package/.next-prod/server/app/api/services/scripts/route.js +1 -1
  235. package/.next-prod/server/app/api/services/scripts/route.js.nft.json +1 -1
  236. package/.next-prod/server/app/api/session/[sessionId]/fork/route.js +1 -1
  237. package/.next-prod/server/app/api/session/[sessionId]/fork/route.js.nft.json +1 -1
  238. package/.next-prod/server/app/api/session/[sessionId]/history/route.js +1 -1
  239. package/.next-prod/server/app/api/session/[sessionId]/history/route.js.nft.json +1 -1
  240. package/.next-prod/server/app/api/session-by-path/route.js +1 -1
  241. package/.next-prod/server/app/api/session-by-path/route.js.nft.json +1 -1
  242. package/.next-prod/server/app/api/sessions/projects/[encodedPath]/route.js +1 -1
  243. package/.next-prod/server/app/api/sessions/projects/[encodedPath]/route.js.nft.json +1 -1
  244. package/.next-prod/server/app/api/sessions/projects/route.js +1 -1
  245. package/.next-prod/server/app/api/sessions/projects/route.js.nft.json +1 -1
  246. package/.next-prod/server/app/api/sessions/route.js +1 -1
  247. package/.next-prod/server/app/api/sessions/route.js.nft.json +1 -1
  248. package/.next-prod/server/app/api/settings/route.js +1 -1
  249. package/.next-prod/server/app/api/settings/route.js.nft.json +1 -1
  250. package/.next-prod/server/app/api/skills/[id]/route.js +1 -1
  251. package/.next-prod/server/app/api/skills/[id]/route.js.nft.json +1 -1
  252. package/.next-prod/server/app/api/skills/content/route.js +1 -1
  253. package/.next-prod/server/app/api/skills/content/route.js.nft.json +1 -1
  254. package/.next-prod/server/app/api/skills/route.js +1 -1
  255. package/.next-prod/server/app/api/skills/route.js.nft.json +1 -1
  256. package/.next-prod/server/app/api/terminal/aliases/route.js +1 -1
  257. package/.next-prod/server/app/api/terminal/aliases/route.js.nft.json +1 -1
  258. package/.next-prod/server/app/api/terminal/autocomplete/route.js +1 -1
  259. package/.next-prod/server/app/api/terminal/autocomplete/route.js.nft.json +1 -1
  260. package/.next-prod/server/app/api/terminal/bubble-order/route.js +1 -1
  261. package/.next-prod/server/app/api/terminal/bubble-order/route.js.nft.json +1 -1
  262. package/.next-prod/server/app/api/terminal/env/route.js +1 -1
  263. package/.next-prod/server/app/api/terminal/env/route.js.nft.json +1 -1
  264. package/.next-prod/server/app/api/terminal/history/route.js +1 -1
  265. package/.next-prod/server/app/api/terminal/history/route.js.nft.json +1 -1
  266. package/.next-prod/server/app/api/version/route.js +1 -1
  267. package/.next-prod/server/app/api/version/route.js.nft.json +1 -1
  268. package/.next-prod/server/app/favicon.ico/route.js +1 -1
  269. package/.next-prod/server/app/favicon.ico/route.js.nft.json +1 -1
  270. package/.next-prod/server/app/manifest.webmanifest/route.js +2 -2
  271. package/.next-prod/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  272. package/.next-prod/server/app/page.js +2 -2
  273. package/.next-prod/server/app/page.js.nft.json +1 -1
  274. package/.next-prod/server/app/page_client-reference-manifest.js +1 -1
  275. package/.next-prod/server/app/project/page.js +2 -2
  276. package/.next-prod/server/app/project/page.js.nft.json +1 -1
  277. package/.next-prod/server/app/project/page_client-reference-manifest.js +1 -1
  278. package/.next-prod/server/app/review/[id]/page.js +2 -2
  279. package/.next-prod/server/app/review/[id]/page.js.nft.json +1 -1
  280. package/.next-prod/server/app/review/[id]/page_client-reference-manifest.js +1 -1
  281. package/.next-prod/server/app-paths-manifest.json +3 -2
  282. package/.next-prod/server/chunks/1921.js +131 -0
  283. package/.next-prod/server/chunks/2939.js +1 -1
  284. package/.next-prod/server/chunks/3792.js +9 -0
  285. package/.next-prod/server/chunks/3863.js +4 -1
  286. package/.next-prod/server/chunks/6244.js +1 -0
  287. package/.next-prod/server/chunks/8916.js +1 -1
  288. package/.next-prod/server/chunks/9658.js +9 -9
  289. package/.next-prod/server/middleware-build-manifest.js +1 -1
  290. package/.next-prod/server/middleware-react-loadable-manifest.js +1 -1
  291. package/.next-prod/server/pages/404.html +1 -1
  292. package/.next-prod/server/pages/500.html +1 -1
  293. package/.next-prod/server/server-reference-manifest.json +1 -1
  294. package/.next-prod/static/2xsVtkHy1Q-18e5b3DPua/_buildManifest.js +1 -0
  295. package/.next-prod/static/chunks/6321-a2227f1f162bd000.js +29 -0
  296. package/.next-prod/static/chunks/6345-d9033e1e3d07c277.js +14 -0
  297. package/.next-prod/static/chunks/app/_global-error/page-ccd4c8b73711effa.js +1 -0
  298. package/.next-prod/static/chunks/app/api/agent/test/route-ccd4c8b73711effa.js +1 -0
  299. package/.next-prod/static/chunks/app/api/bash/route-ccd4c8b73711effa.js +1 -0
  300. package/.next-prod/static/chunks/app/api/chat/codex/route-ccd4c8b73711effa.js +1 -0
  301. package/.next-prod/static/chunks/app/api/chat/deepseek/route-ccd4c8b73711effa.js +1 -0
  302. package/.next-prod/static/chunks/app/api/chat/kimi/route-ccd4c8b73711effa.js +1 -0
  303. package/.next-prod/static/chunks/app/api/chat/ollama/route-ccd4c8b73711effa.js +1 -0
  304. package/.next-prod/static/chunks/app/api/chat/pty-input/route-ccd4c8b73711effa.js +1 -0
  305. package/.next-prod/static/chunks/app/api/chat/route-ccd4c8b73711effa.js +1 -0
  306. package/.next-prod/static/chunks/app/api/claude-stats/route-ccd4c8b73711effa.js +1 -0
  307. package/.next-prod/static/chunks/app/api/commands/route-ccd4c8b73711effa.js +1 -0
  308. package/.next-prod/static/chunks/app/api/comments/route-ccd4c8b73711effa.js +1 -0
  309. package/.next-prod/static/chunks/app/api/db/columns/route-ccd4c8b73711effa.js +1 -0
  310. package/.next-prod/static/chunks/app/api/db/connect/route-ccd4c8b73711effa.js +1 -0
  311. package/.next-prod/static/chunks/app/api/db/disconnect/route-ccd4c8b73711effa.js +1 -0
  312. package/.next-prod/static/chunks/app/api/db/export/route-ccd4c8b73711effa.js +1 -0
  313. package/.next-prod/static/chunks/app/api/db/query/route-ccd4c8b73711effa.js +1 -0
  314. package/.next-prod/static/chunks/app/api/db/schemas/route-ccd4c8b73711effa.js +1 -0
  315. package/.next-prod/static/chunks/app/api/dev/spans/route-ccd4c8b73711effa.js +1 -0
  316. package/.next-prod/static/chunks/app/api/extension/version/route-ccd4c8b73711effa.js +1 -0
  317. package/.next-prod/static/chunks/app/api/file/route-ccd4c8b73711effa.js +1 -0
  318. package/.next-prod/static/chunks/app/api/files/blame/route-ccd4c8b73711effa.js +1 -0
  319. package/.next-prod/static/chunks/app/api/files/clipboard/route-ccd4c8b73711effa.js +1 -0
  320. package/.next-prod/static/chunks/app/api/files/copy/route-ccd4c8b73711effa.js +1 -0
  321. package/.next-prod/static/chunks/app/api/files/delete/route-ccd4c8b73711effa.js +1 -0
  322. package/.next-prod/static/chunks/app/api/files/expanded/route-ccd4c8b73711effa.js +1 -0
  323. package/.next-prod/static/chunks/app/api/files/index/route-ccd4c8b73711effa.js +1 -0
  324. package/.next-prod/static/chunks/app/api/files/init/route-ccd4c8b73711effa.js +1 -0
  325. package/.next-prod/static/chunks/app/api/files/paste/route-ccd4c8b73711effa.js +1 -0
  326. package/.next-prod/static/chunks/app/api/files/read/route-ccd4c8b73711effa.js +1 -0
  327. package/.next-prod/static/chunks/app/api/files/readdir/route-ccd4c8b73711effa.js +1 -0
  328. package/.next-prod/static/chunks/app/api/files/recent/route-ccd4c8b73711effa.js +1 -0
  329. package/.next-prod/static/chunks/app/api/files/save/route-ccd4c8b73711effa.js +1 -0
  330. package/.next-prod/static/chunks/app/api/files/search/route-ccd4c8b73711effa.js +1 -0
  331. package/.next-prod/static/chunks/app/api/files/stat/route-ccd4c8b73711effa.js +1 -0
  332. package/.next-prod/static/chunks/app/api/files/text/route-ccd4c8b73711effa.js +1 -0
  333. package/.next-prod/static/chunks/app/api/git/branch-diff/route-ccd4c8b73711effa.js +1 -0
  334. package/.next-prod/static/chunks/app/api/git/branches/route-ccd4c8b73711effa.js +1 -0
  335. package/.next-prod/static/chunks/app/api/git/commit-diff/route-ccd4c8b73711effa.js +1 -0
  336. package/.next-prod/static/chunks/app/api/git/commits/route-ccd4c8b73711effa.js +1 -0
  337. package/.next-prod/static/chunks/app/api/git/diff/route-ccd4c8b73711effa.js +1 -0
  338. package/.next-prod/static/chunks/app/api/git/discard/route-ccd4c8b73711effa.js +1 -0
  339. package/.next-prod/static/chunks/app/api/git/stage/route-ccd4c8b73711effa.js +1 -0
  340. package/.next-prod/static/chunks/app/api/git/status/route-ccd4c8b73711effa.js +1 -0
  341. package/.next-prod/static/chunks/app/api/git/unstage/route-ccd4c8b73711effa.js +1 -0
  342. package/.next-prod/static/chunks/app/api/git/worktree/route-ccd4c8b73711effa.js +1 -0
  343. package/.next-prod/static/chunks/app/api/global-state/route-ccd4c8b73711effa.js +1 -0
  344. package/.next-prod/static/chunks/app/api/jupyter/load/route-ccd4c8b73711effa.js +1 -0
  345. package/.next-prod/static/chunks/app/api/jupyter/save/route-ccd4c8b73711effa.js +1 -0
  346. package/.next-prod/static/chunks/app/api/jupyter/shutdown/route-ccd4c8b73711effa.js +1 -0
  347. package/.next-prod/static/chunks/app/api/lsp/definition/route-ccd4c8b73711effa.js +1 -0
  348. package/.next-prod/static/chunks/app/api/lsp/hover/route-ccd4c8b73711effa.js +1 -0
  349. package/.next-prod/static/chunks/app/api/lsp/references/route-ccd4c8b73711effa.js +1 -0
  350. package/.next-prod/static/chunks/app/api/lsp/status/route-ccd4c8b73711effa.js +1 -0
  351. package/.next-prod/static/chunks/app/api/lsp/warmup/route-ccd4c8b73711effa.js +1 -0
  352. package/.next-prod/static/chunks/app/api/mysql/columns/route-ccd4c8b73711effa.js +1 -0
  353. package/.next-prod/static/chunks/app/api/mysql/connect/route-ccd4c8b73711effa.js +1 -0
  354. package/.next-prod/static/chunks/app/api/mysql/disconnect/route-ccd4c8b73711effa.js +1 -0
  355. package/.next-prod/static/chunks/app/api/mysql/export/route-ccd4c8b73711effa.js +1 -0
  356. package/.next-prod/static/chunks/app/api/mysql/query/route-ccd4c8b73711effa.js +1 -0
  357. package/.next-prod/static/chunks/app/api/mysql/schemas/route-ccd4c8b73711effa.js +1 -0
  358. package/.next-prod/static/chunks/app/api/neo4j/connect/route-ccd4c8b73711effa.js +1 -0
  359. package/.next-prod/static/chunks/app/api/neo4j/disconnect/route-ccd4c8b73711effa.js +1 -0
  360. package/.next-prod/static/chunks/app/api/neo4j/query/route-ccd4c8b73711effa.js +1 -0
  361. package/.next-prod/static/chunks/app/api/neo4j/schema/route-ccd4c8b73711effa.js +1 -0
  362. package/.next-prod/static/chunks/app/api/note/route-ccd4c8b73711effa.js +1 -0
  363. package/.next-prod/static/chunks/app/api/ollama/models/route-ccd4c8b73711effa.js +1 -0
  364. package/.next-prod/static/chunks/app/api/ollama/start/route-ccd4c8b73711effa.js +1 -0
  365. package/.next-prod/static/chunks/app/api/open-cursor/route-ccd4c8b73711effa.js +1 -0
  366. package/.next-prod/static/chunks/app/api/open-vscode/route-ccd4c8b73711effa.js +1 -0
  367. package/.next-prod/static/chunks/app/api/pick-folder/route-ccd4c8b73711effa.js +1 -0
  368. package/.next-prod/static/chunks/app/api/pinned-sessions/route-ccd4c8b73711effa.js +1 -0
  369. package/.next-prod/static/chunks/app/api/project-settings/route-ccd4c8b73711effa.js +1 -0
  370. package/.next-prod/static/chunks/app/api/project-state/route-ccd4c8b73711effa.js +1 -0
  371. package/.next-prod/static/chunks/app/api/projectGraph/affected/route-ccd4c8b73711effa.js +1 -0
  372. package/.next-prod/static/chunks/app/api/projectGraph/callees/route-ccd4c8b73711effa.js +1 -0
  373. package/.next-prod/static/chunks/app/api/projectGraph/callers/route-ccd4c8b73711effa.js +1 -0
  374. package/.next-prod/static/chunks/app/api/projectGraph/coedit/route-ccd4c8b73711effa.js +1 -0
  375. package/.next-prod/static/chunks/app/api/projectGraph/context/route-ccd4c8b73711effa.js +1 -0
  376. package/.next-prod/static/chunks/app/api/projectGraph/file/route-ccd4c8b73711effa.js +1 -0
  377. package/.next-prod/static/chunks/app/api/projectGraph/file-functions/route-ccd4c8b73711effa.js +1 -0
  378. package/.next-prod/static/chunks/app/api/projectGraph/impact/route-ccd4c8b73711effa.js +1 -0
  379. package/.next-prod/static/chunks/app/api/projectGraph/related/route-ccd4c8b73711effa.js +1 -0
  380. package/.next-prod/static/chunks/app/api/projectGraph/risk/route-ccd4c8b73711effa.js +1 -0
  381. package/.next-prod/static/chunks/app/api/projectGraph/search/route-ccd4c8b73711effa.js +1 -0
  382. package/.next-prod/static/chunks/app/api/projects/route-ccd4c8b73711effa.js +1 -0
  383. package/.next-prod/static/chunks/app/api/redis/command/route-ccd4c8b73711effa.js +1 -0
  384. package/.next-prod/static/chunks/app/api/redis/connect/route-ccd4c8b73711effa.js +1 -0
  385. package/.next-prod/static/chunks/app/api/redis/delete/route-ccd4c8b73711effa.js +1 -0
  386. package/.next-prod/static/chunks/app/api/redis/disconnect/route-ccd4c8b73711effa.js +1 -0
  387. package/.next-prod/static/chunks/app/api/redis/get/route-ccd4c8b73711effa.js +1 -0
  388. package/.next-prod/static/chunks/app/api/redis/keys/route-ccd4c8b73711effa.js +1 -0
  389. package/.next-prod/static/chunks/app/api/redis/set/route-ccd4c8b73711effa.js +1 -0
  390. package/.next-prod/static/chunks/app/api/review/[id]/comments/route-ccd4c8b73711effa.js +1 -0
  391. package/.next-prod/static/chunks/app/api/review/[id]/replies/route-ccd4c8b73711effa.js +1 -0
  392. package/.next-prod/static/chunks/app/api/review/[id]/route-ccd4c8b73711effa.js +1 -0
  393. package/.next-prod/static/chunks/app/api/review/identify/route-ccd4c8b73711effa.js +1 -0
  394. package/.next-prod/static/chunks/app/api/review/order/route-ccd4c8b73711effa.js +1 -0
  395. package/.next-prod/static/chunks/app/api/review/route-ccd4c8b73711effa.js +1 -0
  396. package/.next-prod/static/chunks/app/api/review/share-info/route-ccd4c8b73711effa.js +1 -0
  397. package/.next-prod/static/chunks/app/api/review/users/route-ccd4c8b73711effa.js +1 -0
  398. package/.next-prod/static/chunks/app/api/scheduled-tasks/route-ccd4c8b73711effa.js +1 -0
  399. package/.next-prod/static/chunks/app/api/services/config/route-ccd4c8b73711effa.js +1 -0
  400. package/.next-prod/static/chunks/app/api/services/scripts/route-ccd4c8b73711effa.js +1 -0
  401. package/.next-prod/static/chunks/app/api/session/[sessionId]/fork/route-ccd4c8b73711effa.js +1 -0
  402. package/.next-prod/static/chunks/app/api/session/[sessionId]/history/route-ccd4c8b73711effa.js +1 -0
  403. package/.next-prod/static/chunks/app/api/session-by-path/route-ccd4c8b73711effa.js +1 -0
  404. package/.next-prod/static/chunks/app/api/sessions/projects/[encodedPath]/route-ccd4c8b73711effa.js +1 -0
  405. package/.next-prod/static/chunks/app/api/sessions/projects/route-ccd4c8b73711effa.js +1 -0
  406. package/.next-prod/static/chunks/app/api/sessions/route-ccd4c8b73711effa.js +1 -0
  407. package/.next-prod/static/chunks/app/api/settings/route-ccd4c8b73711effa.js +1 -0
  408. package/.next-prod/static/chunks/app/api/skills/[id]/route-ccd4c8b73711effa.js +1 -0
  409. package/.next-prod/static/chunks/app/api/skills/content/route-ccd4c8b73711effa.js +1 -0
  410. package/.next-prod/static/chunks/app/api/skills/route-ccd4c8b73711effa.js +1 -0
  411. package/.next-prod/static/chunks/app/api/terminal/aliases/route-ccd4c8b73711effa.js +1 -0
  412. package/.next-prod/static/chunks/app/api/terminal/autocomplete/route-ccd4c8b73711effa.js +1 -0
  413. package/.next-prod/static/chunks/app/api/terminal/bubble-order/route-ccd4c8b73711effa.js +1 -0
  414. package/.next-prod/static/chunks/app/api/terminal/env/route-ccd4c8b73711effa.js +1 -0
  415. package/.next-prod/static/chunks/app/api/terminal/history/route-ccd4c8b73711effa.js +1 -0
  416. package/.next-prod/static/chunks/app/api/version/route-ccd4c8b73711effa.js +1 -0
  417. package/.next-prod/static/chunks/app/{layout-8e3a54b794cb35b6.js → layout-a21c32c2b18fbae2.js} +1 -1
  418. package/.next-prod/static/chunks/app/manifest.webmanifest/route-ccd4c8b73711effa.js +1 -0
  419. package/.next-prod/static/chunks/app/{page-3ab0a0f28cbdc8e2.js → page-c5dc8ea6f9fc740b.js} +1 -1
  420. package/.next-prod/static/chunks/app/project/{page-3ab0a0f28cbdc8e2.js → page-c5dc8ea6f9fc740b.js} +1 -1
  421. package/.next-prod/static/chunks/next/dist/client/components/builtin/app-error-ccd4c8b73711effa.js +1 -0
  422. package/.next-prod/static/chunks/next/dist/client/components/builtin/forbidden-ccd4c8b73711effa.js +1 -0
  423. package/.next-prod/static/chunks/next/dist/client/components/builtin/not-found-ccd4c8b73711effa.js +1 -0
  424. package/.next-prod/static/chunks/next/dist/client/components/builtin/unauthorized-ccd4c8b73711effa.js +1 -0
  425. package/.next-prod/static/chunks/webpack-cb3881d9a37f80b7.js +1 -0
  426. package/.next-prod/static/css/ad6271f3f61ab845.css +1 -0
  427. package/.next-prod/trace +13 -13
  428. package/.next-prod/trace-build +1 -1
  429. package/.next-prod/types/app/api/chat/pty-input/route.ts +351 -0
  430. package/.next-prod/types/routes.d.ts +2 -1
  431. package/.next-prod/types/validator.ts +9 -0
  432. package/README.md +5 -5
  433. package/README.zh.md +5 -5
  434. package/bin/cock-browser.messages.mjs +176 -0
  435. package/bin/cock-browser.mjs +290 -18
  436. package/chrome-extension/automation.js +684 -32
  437. package/chrome-extension/manifest.json +1 -1
  438. package/chrome-extension/messages.js +45 -0
  439. package/dist/{chunk-W6G6X3FP.mjs → chunk-WOM47O75.mjs} +49 -1
  440. package/dist/httpApi.mjs +66 -6
  441. package/dist/scheduledTasks.mjs +6 -1
  442. package/dist/{server-ZBUZ24TC.mjs → server-SNB4H35J.mjs} +5 -1
  443. package/dist/wsServer.mjs +5 -2
  444. package/package.json +3 -5
  445. package/.next-prod/server/chunks/4034.js +0 -114
  446. package/.next-prod/server/chunks/8764.js +0 -26
  447. package/.next-prod/static/7pu1LXbRRLfg05VN3u39s/_buildManifest.js +0 -1
  448. package/.next-prod/static/chunks/6345-d477b8d5c682b1fb.js +0 -14
  449. package/.next-prod/static/chunks/6917-0a22d7764ca45244.js +0 -29
  450. package/.next-prod/static/chunks/app/_global-error/page-8ae56b9359db0996.js +0 -1
  451. package/.next-prod/static/chunks/app/api/agent/test/route-8ae56b9359db0996.js +0 -1
  452. package/.next-prod/static/chunks/app/api/bash/route-8ae56b9359db0996.js +0 -1
  453. package/.next-prod/static/chunks/app/api/chat/codex/route-8ae56b9359db0996.js +0 -1
  454. package/.next-prod/static/chunks/app/api/chat/deepseek/route-8ae56b9359db0996.js +0 -1
  455. package/.next-prod/static/chunks/app/api/chat/kimi/route-8ae56b9359db0996.js +0 -1
  456. package/.next-prod/static/chunks/app/api/chat/ollama/route-8ae56b9359db0996.js +0 -1
  457. package/.next-prod/static/chunks/app/api/chat/route-8ae56b9359db0996.js +0 -1
  458. package/.next-prod/static/chunks/app/api/claude-stats/route-8ae56b9359db0996.js +0 -1
  459. package/.next-prod/static/chunks/app/api/commands/route-8ae56b9359db0996.js +0 -1
  460. package/.next-prod/static/chunks/app/api/comments/route-8ae56b9359db0996.js +0 -1
  461. package/.next-prod/static/chunks/app/api/db/columns/route-8ae56b9359db0996.js +0 -1
  462. package/.next-prod/static/chunks/app/api/db/connect/route-8ae56b9359db0996.js +0 -1
  463. package/.next-prod/static/chunks/app/api/db/disconnect/route-8ae56b9359db0996.js +0 -1
  464. package/.next-prod/static/chunks/app/api/db/export/route-8ae56b9359db0996.js +0 -1
  465. package/.next-prod/static/chunks/app/api/db/query/route-8ae56b9359db0996.js +0 -1
  466. package/.next-prod/static/chunks/app/api/db/schemas/route-8ae56b9359db0996.js +0 -1
  467. package/.next-prod/static/chunks/app/api/dev/spans/route-8ae56b9359db0996.js +0 -1
  468. package/.next-prod/static/chunks/app/api/extension/version/route-8ae56b9359db0996.js +0 -1
  469. package/.next-prod/static/chunks/app/api/file/route-8ae56b9359db0996.js +0 -1
  470. package/.next-prod/static/chunks/app/api/files/blame/route-8ae56b9359db0996.js +0 -1
  471. package/.next-prod/static/chunks/app/api/files/clipboard/route-8ae56b9359db0996.js +0 -1
  472. package/.next-prod/static/chunks/app/api/files/copy/route-8ae56b9359db0996.js +0 -1
  473. package/.next-prod/static/chunks/app/api/files/delete/route-8ae56b9359db0996.js +0 -1
  474. package/.next-prod/static/chunks/app/api/files/expanded/route-8ae56b9359db0996.js +0 -1
  475. package/.next-prod/static/chunks/app/api/files/index/route-8ae56b9359db0996.js +0 -1
  476. package/.next-prod/static/chunks/app/api/files/init/route-8ae56b9359db0996.js +0 -1
  477. package/.next-prod/static/chunks/app/api/files/paste/route-8ae56b9359db0996.js +0 -1
  478. package/.next-prod/static/chunks/app/api/files/read/route-8ae56b9359db0996.js +0 -1
  479. package/.next-prod/static/chunks/app/api/files/readdir/route-8ae56b9359db0996.js +0 -1
  480. package/.next-prod/static/chunks/app/api/files/recent/route-8ae56b9359db0996.js +0 -1
  481. package/.next-prod/static/chunks/app/api/files/save/route-8ae56b9359db0996.js +0 -1
  482. package/.next-prod/static/chunks/app/api/files/search/route-8ae56b9359db0996.js +0 -1
  483. package/.next-prod/static/chunks/app/api/files/stat/route-8ae56b9359db0996.js +0 -1
  484. package/.next-prod/static/chunks/app/api/files/text/route-8ae56b9359db0996.js +0 -1
  485. package/.next-prod/static/chunks/app/api/git/branch-diff/route-8ae56b9359db0996.js +0 -1
  486. package/.next-prod/static/chunks/app/api/git/branches/route-8ae56b9359db0996.js +0 -1
  487. package/.next-prod/static/chunks/app/api/git/commit-diff/route-8ae56b9359db0996.js +0 -1
  488. package/.next-prod/static/chunks/app/api/git/commits/route-8ae56b9359db0996.js +0 -1
  489. package/.next-prod/static/chunks/app/api/git/diff/route-8ae56b9359db0996.js +0 -1
  490. package/.next-prod/static/chunks/app/api/git/discard/route-8ae56b9359db0996.js +0 -1
  491. package/.next-prod/static/chunks/app/api/git/stage/route-8ae56b9359db0996.js +0 -1
  492. package/.next-prod/static/chunks/app/api/git/status/route-8ae56b9359db0996.js +0 -1
  493. package/.next-prod/static/chunks/app/api/git/unstage/route-8ae56b9359db0996.js +0 -1
  494. package/.next-prod/static/chunks/app/api/git/worktree/route-8ae56b9359db0996.js +0 -1
  495. package/.next-prod/static/chunks/app/api/global-state/route-8ae56b9359db0996.js +0 -1
  496. package/.next-prod/static/chunks/app/api/jupyter/load/route-8ae56b9359db0996.js +0 -1
  497. package/.next-prod/static/chunks/app/api/jupyter/save/route-8ae56b9359db0996.js +0 -1
  498. package/.next-prod/static/chunks/app/api/jupyter/shutdown/route-8ae56b9359db0996.js +0 -1
  499. package/.next-prod/static/chunks/app/api/lsp/definition/route-8ae56b9359db0996.js +0 -1
  500. package/.next-prod/static/chunks/app/api/lsp/hover/route-8ae56b9359db0996.js +0 -1
  501. package/.next-prod/static/chunks/app/api/lsp/references/route-8ae56b9359db0996.js +0 -1
  502. package/.next-prod/static/chunks/app/api/lsp/status/route-8ae56b9359db0996.js +0 -1
  503. package/.next-prod/static/chunks/app/api/lsp/warmup/route-8ae56b9359db0996.js +0 -1
  504. package/.next-prod/static/chunks/app/api/mysql/columns/route-8ae56b9359db0996.js +0 -1
  505. package/.next-prod/static/chunks/app/api/mysql/connect/route-8ae56b9359db0996.js +0 -1
  506. package/.next-prod/static/chunks/app/api/mysql/disconnect/route-8ae56b9359db0996.js +0 -1
  507. package/.next-prod/static/chunks/app/api/mysql/export/route-8ae56b9359db0996.js +0 -1
  508. package/.next-prod/static/chunks/app/api/mysql/query/route-8ae56b9359db0996.js +0 -1
  509. package/.next-prod/static/chunks/app/api/mysql/schemas/route-8ae56b9359db0996.js +0 -1
  510. package/.next-prod/static/chunks/app/api/neo4j/connect/route-8ae56b9359db0996.js +0 -1
  511. package/.next-prod/static/chunks/app/api/neo4j/disconnect/route-8ae56b9359db0996.js +0 -1
  512. package/.next-prod/static/chunks/app/api/neo4j/query/route-8ae56b9359db0996.js +0 -1
  513. package/.next-prod/static/chunks/app/api/neo4j/schema/route-8ae56b9359db0996.js +0 -1
  514. package/.next-prod/static/chunks/app/api/note/route-8ae56b9359db0996.js +0 -1
  515. package/.next-prod/static/chunks/app/api/ollama/models/route-8ae56b9359db0996.js +0 -1
  516. package/.next-prod/static/chunks/app/api/ollama/start/route-8ae56b9359db0996.js +0 -1
  517. package/.next-prod/static/chunks/app/api/open-cursor/route-8ae56b9359db0996.js +0 -1
  518. package/.next-prod/static/chunks/app/api/open-vscode/route-8ae56b9359db0996.js +0 -1
  519. package/.next-prod/static/chunks/app/api/pick-folder/route-8ae56b9359db0996.js +0 -1
  520. package/.next-prod/static/chunks/app/api/pinned-sessions/route-8ae56b9359db0996.js +0 -1
  521. package/.next-prod/static/chunks/app/api/project-settings/route-8ae56b9359db0996.js +0 -1
  522. package/.next-prod/static/chunks/app/api/project-state/route-8ae56b9359db0996.js +0 -1
  523. package/.next-prod/static/chunks/app/api/projectGraph/affected/route-8ae56b9359db0996.js +0 -1
  524. package/.next-prod/static/chunks/app/api/projectGraph/callees/route-8ae56b9359db0996.js +0 -1
  525. package/.next-prod/static/chunks/app/api/projectGraph/callers/route-8ae56b9359db0996.js +0 -1
  526. package/.next-prod/static/chunks/app/api/projectGraph/coedit/route-8ae56b9359db0996.js +0 -1
  527. package/.next-prod/static/chunks/app/api/projectGraph/context/route-8ae56b9359db0996.js +0 -1
  528. package/.next-prod/static/chunks/app/api/projectGraph/file/route-8ae56b9359db0996.js +0 -1
  529. package/.next-prod/static/chunks/app/api/projectGraph/file-functions/route-8ae56b9359db0996.js +0 -1
  530. package/.next-prod/static/chunks/app/api/projectGraph/impact/route-8ae56b9359db0996.js +0 -1
  531. package/.next-prod/static/chunks/app/api/projectGraph/related/route-8ae56b9359db0996.js +0 -1
  532. package/.next-prod/static/chunks/app/api/projectGraph/risk/route-8ae56b9359db0996.js +0 -1
  533. package/.next-prod/static/chunks/app/api/projectGraph/search/route-8ae56b9359db0996.js +0 -1
  534. package/.next-prod/static/chunks/app/api/projects/route-8ae56b9359db0996.js +0 -1
  535. package/.next-prod/static/chunks/app/api/redis/command/route-8ae56b9359db0996.js +0 -1
  536. package/.next-prod/static/chunks/app/api/redis/connect/route-8ae56b9359db0996.js +0 -1
  537. package/.next-prod/static/chunks/app/api/redis/delete/route-8ae56b9359db0996.js +0 -1
  538. package/.next-prod/static/chunks/app/api/redis/disconnect/route-8ae56b9359db0996.js +0 -1
  539. package/.next-prod/static/chunks/app/api/redis/get/route-8ae56b9359db0996.js +0 -1
  540. package/.next-prod/static/chunks/app/api/redis/keys/route-8ae56b9359db0996.js +0 -1
  541. package/.next-prod/static/chunks/app/api/redis/set/route-8ae56b9359db0996.js +0 -1
  542. package/.next-prod/static/chunks/app/api/review/[id]/comments/route-8ae56b9359db0996.js +0 -1
  543. package/.next-prod/static/chunks/app/api/review/[id]/replies/route-8ae56b9359db0996.js +0 -1
  544. package/.next-prod/static/chunks/app/api/review/[id]/route-8ae56b9359db0996.js +0 -1
  545. package/.next-prod/static/chunks/app/api/review/identify/route-8ae56b9359db0996.js +0 -1
  546. package/.next-prod/static/chunks/app/api/review/order/route-8ae56b9359db0996.js +0 -1
  547. package/.next-prod/static/chunks/app/api/review/route-8ae56b9359db0996.js +0 -1
  548. package/.next-prod/static/chunks/app/api/review/share-info/route-8ae56b9359db0996.js +0 -1
  549. package/.next-prod/static/chunks/app/api/review/users/route-8ae56b9359db0996.js +0 -1
  550. package/.next-prod/static/chunks/app/api/scheduled-tasks/route-8ae56b9359db0996.js +0 -1
  551. package/.next-prod/static/chunks/app/api/services/config/route-8ae56b9359db0996.js +0 -1
  552. package/.next-prod/static/chunks/app/api/services/scripts/route-8ae56b9359db0996.js +0 -1
  553. package/.next-prod/static/chunks/app/api/session/[sessionId]/fork/route-8ae56b9359db0996.js +0 -1
  554. package/.next-prod/static/chunks/app/api/session/[sessionId]/history/route-8ae56b9359db0996.js +0 -1
  555. package/.next-prod/static/chunks/app/api/session-by-path/route-8ae56b9359db0996.js +0 -1
  556. package/.next-prod/static/chunks/app/api/sessions/projects/[encodedPath]/route-8ae56b9359db0996.js +0 -1
  557. package/.next-prod/static/chunks/app/api/sessions/projects/route-8ae56b9359db0996.js +0 -1
  558. package/.next-prod/static/chunks/app/api/sessions/route-8ae56b9359db0996.js +0 -1
  559. package/.next-prod/static/chunks/app/api/settings/route-8ae56b9359db0996.js +0 -1
  560. package/.next-prod/static/chunks/app/api/skills/[id]/route-8ae56b9359db0996.js +0 -1
  561. package/.next-prod/static/chunks/app/api/skills/content/route-8ae56b9359db0996.js +0 -1
  562. package/.next-prod/static/chunks/app/api/skills/route-8ae56b9359db0996.js +0 -1
  563. package/.next-prod/static/chunks/app/api/terminal/aliases/route-8ae56b9359db0996.js +0 -1
  564. package/.next-prod/static/chunks/app/api/terminal/autocomplete/route-8ae56b9359db0996.js +0 -1
  565. package/.next-prod/static/chunks/app/api/terminal/bubble-order/route-8ae56b9359db0996.js +0 -1
  566. package/.next-prod/static/chunks/app/api/terminal/env/route-8ae56b9359db0996.js +0 -1
  567. package/.next-prod/static/chunks/app/api/terminal/history/route-8ae56b9359db0996.js +0 -1
  568. package/.next-prod/static/chunks/app/api/version/route-8ae56b9359db0996.js +0 -1
  569. package/.next-prod/static/chunks/app/manifest.webmanifest/route-8ae56b9359db0996.js +0 -1
  570. package/.next-prod/static/chunks/next/dist/client/components/builtin/app-error-8ae56b9359db0996.js +0 -1
  571. package/.next-prod/static/chunks/next/dist/client/components/builtin/forbidden-8ae56b9359db0996.js +0 -1
  572. package/.next-prod/static/chunks/next/dist/client/components/builtin/not-found-8ae56b9359db0996.js +0 -1
  573. package/.next-prod/static/chunks/next/dist/client/components/builtin/unauthorized-8ae56b9359db0996.js +0 -1
  574. package/.next-prod/static/chunks/webpack-b618ac52d349e5ca.js +0 -1
  575. package/.next-prod/static/css/fc2730c2dbe4866e.css +0 -1
  576. /package/.next-prod/static/{7pu1LXbRRLfg05VN3u39s → 2xsVtkHy1Q-18e5b3DPua}/_ssgManifest.js +0 -0
  577. /package/.next-prod/static/chunks/{e868780c.39804e9ab925f132.js → e868780c-39804e9ab925f132.js} +0 -0
@@ -30,7 +30,7 @@
30
30
  },
31
31
  "web_accessible_resources": [
32
32
  {
33
- "resources": ["disguise.js", "automation.js", "network-capture.js"],
33
+ "resources": ["disguise.js", "automation.js", "network-capture.js", "messages.js"],
34
34
  "matches": ["<all_urls>"]
35
35
  }
36
36
  ],
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Extension-side error templates.
3
+ *
4
+ * Used by automation.js. Generated strings are returned to the CLI as
5
+ * `data.error` and printed verbatim — so they MUST be self-contained and
6
+ * include actionable next steps with generic examples (no case-specific
7
+ * selectors or API paths).
8
+ *
9
+ * The CLI side has its own copy in bin/cock-browser.messages.mjs; this file
10
+ * stays in sync manually (only ~3 templates here, drift risk is low).
11
+ */
12
+
13
+ const EXAMPLES = Object.freeze({
14
+ selectorSubmit: 'button[type="submit"]',
15
+ selectorAriaSave: 'button[aria-label="Save"]',
16
+ textSignIn: 'Sign in',
17
+ textSave: 'Save',
18
+ });
19
+
20
+ function staleRefMsg(ref, currentEpoch, kind) {
21
+ return `Element ref "${ref}" is stale (current snapshot v=${currentEpoch}; kind: ${kind}).
22
+ Refs are valid only until the next snapshot / re-render / route change.
23
+ Fix one of:
24
+ 1. Re-run \`snapshot\` to get fresh refs (look for v=${currentEpoch} in the banner).
25
+ 2. Use a CSS selector or visible text directly:
26
+ cockpit browser <id> click --text "${EXAMPLES.textSignIn}"
27
+ cockpit browser <id> click --selector '${EXAMPLES.selectorSubmit}'
28
+ 3. Drop to evaluate:
29
+ cockpit browser <id> evaluate "(() => document.querySelector('${EXAMPLES.selectorAriaSave}').click())()"`;
30
+ }
31
+
32
+ function unknownActionMsg(action, suggestions) {
33
+ const hint = suggestions && suggestions.length
34
+ ? `\n Did you mean: ${suggestions.join(', ')}?`
35
+ : '';
36
+ return `Unknown action "${action}".${hint}
37
+ Run: cockpit browser --help-all`;
38
+ }
39
+
40
+ // Expose on globalThis so automation.js (loaded as module) can use them
41
+ // without an explicit import path that differs by build mode.
42
+ if (typeof window !== 'undefined') {
43
+ window.__cockpitBrowserMessages = { staleRefMsg, unknownActionMsg, EXAMPLES };
44
+ }
45
+ export { staleRefMsg, unknownActionMsg, EXAMPLES };
@@ -88,6 +88,7 @@ function createPendingRequest(reqId, timeout) {
88
88
  return new Promise((resolve, reject) => {
89
89
  const timer = setTimeout(() => {
90
90
  pendingRequests.delete(reqId);
91
+ recordCommandResolved(reqId, false);
91
92
  reject(new Error(`Timeout after ${timeout}ms`));
92
93
  }, timeout);
93
94
  pendingRequests.set(reqId, { resolve, reject, timer });
@@ -95,15 +96,20 @@ function createPendingRequest(reqId, timeout) {
95
96
  }
96
97
  function resolvePendingRequest(reqId, ok2, data, error) {
97
98
  const pending = pendingRequests.get(reqId);
98
- if (!pending) return;
99
+ if (!pending) {
100
+ recordCommandResolved(reqId, ok2);
101
+ return;
102
+ }
99
103
  clearTimeout(pending.timer);
100
104
  pendingRequests.delete(reqId);
105
+ recordCommandResolved(reqId, ok2);
101
106
  if (ok2) {
102
107
  pending.resolve(data);
103
108
  } else {
104
109
  pending.reject(new Error(error || "Browser command failed"));
105
110
  }
106
111
  }
112
+ var reqIdMeta = globalThis.__cockpitBrowserReqMeta ?? (globalThis.__cockpitBrowserReqMeta = /* @__PURE__ */ new Map());
107
113
  function sendCommandToBrowser(shortId, reqId, action, params) {
108
114
  const entry = registry.get(shortId);
109
115
  if (!entry || !entry.ws || entry.ws.readyState !== WebSocket.OPEN) {
@@ -115,8 +121,48 @@ function sendCommandToBrowser(shortId, reqId, action, params) {
115
121
  action,
116
122
  params
117
123
  }));
124
+ reqIdMeta.set(reqId, { shortId, action });
118
125
  return true;
119
126
  }
127
+ function recordCommandResolved(reqId, ok2) {
128
+ const meta = reqIdMeta.get(reqId);
129
+ if (!meta) return;
130
+ reqIdMeta.delete(reqId);
131
+ if (ok2) {
132
+ const entry = registry.get(meta.shortId);
133
+ if (entry) {
134
+ entry.lastSuccessTs = Date.now();
135
+ entry.lastSuccessAction = meta.action;
136
+ entry.lastSeen = Date.now();
137
+ }
138
+ }
139
+ }
140
+ function getBrowserHealth(shortId) {
141
+ const entry = registry.get(shortId);
142
+ if (!entry) {
143
+ return {
144
+ found: false,
145
+ ws: "unknown",
146
+ lastSeenMs: null,
147
+ lastSuccessMs: null,
148
+ lastSuccessAction: null,
149
+ pendingCommands: 0
150
+ };
151
+ }
152
+ const now = Date.now();
153
+ let pending = 0;
154
+ for (const reqId of pendingRequests.keys()) {
155
+ if (reqIdMeta.get(reqId)?.shortId === shortId) pending += 1;
156
+ }
157
+ return {
158
+ found: true,
159
+ ws: entry.ws && entry.ws.readyState === WebSocket.OPEN ? "open" : "closed",
160
+ lastSeenMs: entry.lastSeen ? now - entry.lastSeen : null,
161
+ lastSuccessMs: entry.lastSuccessTs ? now - entry.lastSuccessTs : null,
162
+ lastSuccessAction: entry.lastSuccessAction ?? null,
163
+ pendingCommands: pending
164
+ };
165
+ }
120
166
 
121
167
  // packages/feature/console/src/server/plugins/jupyter/JupyterKernelManager.ts
122
168
  import { spawn } from "child_process";
@@ -1121,6 +1167,8 @@ export {
1121
1167
  createPendingRequest,
1122
1168
  resolvePendingRequest,
1123
1169
  sendCommandToBrowser,
1170
+ recordCommandResolved,
1171
+ getBrowserHealth,
1124
1172
  kernelManager,
1125
1173
  registerTerminal,
1126
1174
  finalizeTerminal,
package/dist/httpApi.mjs CHANGED
@@ -3,6 +3,7 @@ import {
3
3
  addOutputListener,
4
4
  createPendingRequest,
5
5
  getBrowserByShortId,
6
+ getBrowserHealth,
6
7
  getFirstAvailableLine,
7
8
  getRunningCommand,
8
9
  getTerminalByShortId,
@@ -20,7 +21,7 @@ import {
20
21
  unregisterBrowser,
21
22
  unregisterTerminal,
22
23
  writeStdinToCommand
23
- } from "./chunk-W6G6X3FP.mjs";
24
+ } from "./chunk-WOM47O75.mjs";
24
25
  import {
25
26
  getTerminalHistoryPath
26
27
  } from "./chunk-GCYLMG43.mjs";
@@ -391,36 +392,95 @@ async function handleBrowserApi(req, res) {
391
392
  sendJson(200, { ok: true });
392
393
  return true;
393
394
  }
395
+ if (action === "health" && !cmdParams?.deep) {
396
+ if (!id) {
397
+ sendJson(400, { ok: false, error: "Missing browser id" });
398
+ return true;
399
+ }
400
+ sendJson(200, { ok: true, data: getBrowserHealth(id) });
401
+ return true;
402
+ }
394
403
  if (!id) {
395
404
  sendJson(400, { ok: false, error: "Missing browser id" });
396
405
  return true;
397
406
  }
398
407
  const browser = getBrowserByShortId(id);
399
408
  if (!browser) {
400
- sendJson(404, { ok: false, error: `Browser "${id}" not found` });
409
+ const all = listBrowsers().map((b) => b.shortId);
410
+ const suggestions = fuzzyTopK(id, all, 3);
411
+ const hint = suggestions.length ? `
412
+ Did you mean: ${suggestions.join(", ")}?` : all.length ? `
413
+ Available: ${all.join(", ")}` : "\n No browsers currently connected. Open a browser bubble in the cockpit console.";
414
+ sendJson(404, {
415
+ ok: false,
416
+ error: `Browser "${id}" not found.${hint}
417
+ Run: cockpit browser list`
418
+ });
401
419
  return true;
402
420
  }
403
421
  if (!browser.ws || browser.ws.readyState !== WebSocket.OPEN) {
404
422
  sendJson(503, {
405
423
  ok: false,
406
- error: `Browser "${id}" is disconnected`
424
+ error: `Browser "${id}" is disconnected (WS closed).
425
+ Recover:
426
+ 1. Refresh the browser tab to re-register the extension.
427
+ 2. Run \`cockpit browser list\` to confirm the shortId.
428
+ 3. If the bubble is gone, re-open it from the cockpit console panel.`
407
429
  });
408
430
  return true;
409
431
  }
432
+ const wsAction = action === "health" ? "health_deep" : action;
410
433
  const reqId = `r-${randomUUID().slice(0, 8)}`;
411
- const sent = sendCommandToBrowser(id, reqId, action, cmdParams);
434
+ const sent = sendCommandToBrowser(id, reqId, wsAction, cmdParams);
412
435
  if (!sent) {
413
- sendJson(503, { ok: false, error: "Failed to send command" });
436
+ sendJson(503, { ok: false, error: "Failed to send command (WS write failed)" });
414
437
  return true;
415
438
  }
416
439
  try {
417
440
  const data = await createPendingRequest(reqId, timeout);
418
441
  sendJson(200, { ok: true, data });
419
442
  } catch (err) {
420
- sendJson(504, { ok: false, error: err.message });
443
+ const msg = err.message;
444
+ if (/timeout/i.test(msg)) {
445
+ const h = getBrowserHealth(id);
446
+ sendJson(504, {
447
+ ok: false,
448
+ error: `${msg} (action "${action}").
449
+ Bridge state: ws=${h.ws} pending=${h.pendingCommands}` + (h.lastSuccessMs !== null ? ` lastSuccess=${Math.round(h.lastSuccessMs / 1e3)}s ago (${h.lastSuccessAction})` : "") + `
450
+ Diagnose:
451
+ cockpit browser ${id} health # cheap server-side probe
452
+ cockpit browser ${id} wait --extension-ready (Phase 2)
453
+ If the bridge state shows fresh activity, the page itself is blocked.
454
+ Consider a service-level test if driven by an async LLM/agent flow.`
455
+ });
456
+ } else {
457
+ sendJson(504, { ok: false, error: msg });
458
+ }
421
459
  }
422
460
  return true;
423
461
  }
462
+ function fuzzyTopK(input, candidates, k) {
463
+ if (!input || !candidates.length) return [];
464
+ const inputLow = input.toLowerCase();
465
+ const bag = bagCounts(inputLow);
466
+ const scored = candidates.map((c) => {
467
+ const cl = c.toLowerCase();
468
+ const cBag = bagCounts(cl);
469
+ let inter = 0;
470
+ for (const [ch, n] of bag) inter += Math.min(n, cBag.get(ch) ?? 0);
471
+ const ratio = inter / Math.max(inputLow.length, cl.length);
472
+ const startsWith = cl.startsWith(inputLow) ? 0.5 : 0;
473
+ const contains = cl.includes(inputLow) ? 0.3 : 0;
474
+ return { c, score: ratio + startsWith + contains };
475
+ });
476
+ scored.sort((a, b) => b.score - a.score);
477
+ return scored.slice(0, k).filter((s) => s.score >= 0.6).map((s) => s.c);
478
+ }
479
+ function bagCounts(s) {
480
+ const m = /* @__PURE__ */ new Map();
481
+ for (const ch of s) m.set(ch, (m.get(ch) ?? 0) + 1);
482
+ return m;
483
+ }
424
484
  async function handleConnectionApi(req, res) {
425
485
  const { pathname } = parse(req.url || "", true);
426
486
  const match = pathname?.match(/^\/api\/connection\/([a-z]+)$/);
@@ -75,7 +75,12 @@ var sendChatMessageEff = (task) => {
75
75
  "WebFetch",
76
76
  "WebSearch",
77
77
  "Task",
78
- "TodoWrite",
78
+ // Task management — claude-agent-sdk@0.3.142 replaced TodoWrite
79
+ // with per-task TaskCreate/Update/Get/List events.
80
+ "TaskCreate",
81
+ "TaskUpdate",
82
+ "TaskGet",
83
+ "TaskList",
79
84
  "mcp__*"
80
85
  ],
81
86
  permissionMode: "bypassPermissions",
@@ -11,6 +11,7 @@ import {
11
11
  findSafeStart,
12
12
  getAllProjectCwds,
13
13
  getBrowserByShortId,
14
+ getBrowserHealth,
14
15
  getFirstAvailableLine,
15
16
  getLinesView,
16
17
  getRegistrySize,
@@ -29,6 +30,7 @@ import {
29
30
  readHead,
30
31
  readSince,
31
32
  readTail,
33
+ recordCommandResolved,
32
34
  registerBrowser,
33
35
  registerCommand,
34
36
  registerTerminal,
@@ -39,7 +41,7 @@ import {
39
41
  unregisterTerminal,
40
42
  updateBrowserWs,
41
43
  writeStdinToCommand
42
- } from "./chunk-W6G6X3FP.mjs";
44
+ } from "./chunk-WOM47O75.mjs";
43
45
  import {
44
46
  createNeo4jDriver,
45
47
  runCypherWithDriver,
@@ -60,6 +62,7 @@ export {
60
62
  findSafeStart,
61
63
  getAllProjectCwds,
62
64
  getBrowserByShortId,
65
+ getBrowserHealth,
63
66
  getFirstAvailableLine,
64
67
  getLinesView,
65
68
  getRegistrySize,
@@ -78,6 +81,7 @@ export {
78
81
  readHead,
79
82
  readSince,
80
83
  readTail,
84
+ recordCommandResolved,
81
85
  registerBrowser,
82
86
  registerCommand,
83
87
  registerTerminal,
package/dist/wsServer.mjs CHANGED
@@ -16,7 +16,7 @@ import {
16
16
  resolvePendingRequest,
17
17
  unregisterBrowser,
18
18
  writeStdinToCommand
19
- } from "./chunk-W6G6X3FP.mjs";
19
+ } from "./chunk-WOM47O75.mjs";
20
20
  import {
21
21
  AppError,
22
22
  Effect_exports,
@@ -683,7 +683,7 @@ var handleJupyter = (conn, bubbleId, cwd) => Effect_exports.gen(function* () {
683
683
  Effect_exports.annotateLogs("cwd", cwd)
684
684
  );
685
685
  const { kernelManager } = yield* Effect_exports.tryPromise({
686
- try: () => import("./server-ZBUZ24TC.mjs"),
686
+ try: () => import("./server-SNB4H35J.mjs"),
687
687
  catch: (cause) => new AppError({
688
688
  message: "failed to import kernel manager",
689
689
  cause
@@ -1165,6 +1165,8 @@ var runTerminalHandler = (ws, projectCwd) => {
1165
1165
  // packages/feature/explorer/src/server/codeMap/projectGraph/codeIndex.ts
1166
1166
  import { promises as fs4 } from "fs";
1167
1167
  import path6 from "path";
1168
+ import { exec as exec2 } from "child_process";
1169
+ import { promisify as promisify2 } from "util";
1168
1170
 
1169
1171
  // packages/feature/explorer/src/server/codeMap/projectGraph/buildGraph.ts
1170
1172
  import { exec } from "child_process";
@@ -3872,6 +3874,7 @@ function registerWatcherSubscriber(fn) {
3872
3874
  }
3873
3875
  }
3874
3876
  }
3877
+ var execAsync2 = promisify2(exec2);
3875
3878
 
3876
3879
  // src/lib/codeIndexSync.ts
3877
3880
  var wired = false;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@surething/cockpit",
3
- "version": "1.0.217",
4
- "description": "Claude Code GUI for parallel AI coding — drive Claude (default), OpenAI Codex, DeepSeek, Kimi, or local Ollama in tabs. Multi-project sessions, terminal, browser & DB bubbles, code review, slash modes. Local-first, MIT.",
3
+ "version": "1.0.219",
4
+ "description": "Claude Code GUI for parallel AI coding — drive Claude (default), Codex, DeepSeek, Kimi, or local Ollama in tabs. Multi-project sessions, terminal, browser & DB bubbles, code review, slash modes. Local-first, MIT.",
5
5
  "author": "Robert",
6
6
  "license": "MIT",
7
7
  "repository": {
@@ -19,7 +19,6 @@
19
19
  "claude-code-client",
20
20
  "claude-agent-sdk",
21
21
  "anthropic",
22
- "openai-codex",
23
22
  "codex",
24
23
  "deepseek",
25
24
  "deepseek-gui",
@@ -93,7 +92,7 @@
93
92
  },
94
93
  "dependencies": {
95
94
  "@ai-sdk/openai": "^3.0.52",
96
- "@anthropic-ai/claude-agent-sdk": "^0.2.112",
95
+ "@anthropic-ai/claude-agent-sdk": "^0.3.158",
97
96
  "@dagrejs/dagre": "^3.0.0",
98
97
  "@tanstack/react-virtual": "^3.13.18",
99
98
  "@tiptap/extension-link": "^3.19.0",
@@ -168,7 +167,6 @@
168
167
  "typescript": "5.9.3"
169
168
  },
170
169
  "overrides": {
171
- "@anthropic-ai/sdk": "^0.91.1",
172
170
  "postcss": "^8.5.10"
173
171
  }
174
172
  }