@surething/cockpit 1.0.265 → 1.0.267

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 (695) hide show
  1. package/.next-prod/BUILD_ID +1 -1
  2. package/.next-prod/app-path-routes-manifest.json +5 -4
  3. package/.next-prod/build-manifest.json +2 -2
  4. package/.next-prod/cockpit-build.json +1 -1
  5. package/.next-prod/prerender-manifest.json +4 -4
  6. package/.next-prod/routes-manifest.json +6 -0
  7. package/.next-prod/server/app/_global-error/page.js +2 -2
  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/_tree.segment.rsc +1 -1
  15. package/.next-prod/server/app/_not-found/page.js +1 -1
  16. package/.next-prod/server/app/_not-found/page.js.nft.json +1 -1
  17. package/.next-prod/server/app/_not-found/page_client-reference-manifest.js +1 -1
  18. package/.next-prod/server/app/_not-found.html +2 -2
  19. package/.next-prod/server/app/_not-found.rsc +3 -3
  20. package/.next-prod/server/app/_not-found.segments/_full.segment.rsc +3 -3
  21. package/.next-prod/server/app/_not-found.segments/_index.segment.rsc +3 -3
  22. package/.next-prod/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  23. package/.next-prod/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  24. package/.next-prod/server/app/api/agent/test/route.js +1 -1
  25. package/.next-prod/server/app/api/agent/test/route.js.nft.json +1 -1
  26. package/.next-prod/server/app/api/bash/route.js +1 -1
  27. package/.next-prod/server/app/api/bash/route.js.nft.json +1 -1
  28. package/.next-prod/server/app/api/chat/codex/route.js +1 -1
  29. package/.next-prod/server/app/api/chat/codex/route.js.nft.json +1 -1
  30. package/.next-prod/server/app/api/chat/deepseek/route.js +1 -1
  31. package/.next-prod/server/app/api/chat/deepseek/route.js.nft.json +1 -1
  32. package/.next-prod/server/app/api/chat/glm/route.js +1 -1
  33. package/.next-prod/server/app/api/chat/glm/route.js.nft.json +1 -1
  34. package/.next-prod/server/app/api/chat/kimi/route.js +1 -1
  35. package/.next-prod/server/app/api/chat/kimi/route.js.nft.json +1 -1
  36. package/.next-prod/server/app/api/chat/ollama/route.js +1 -1
  37. package/.next-prod/server/app/api/chat/ollama/route.js.nft.json +1 -1
  38. package/.next-prod/server/app/api/chat/route.js +1 -1
  39. package/.next-prod/server/app/api/chat/route.js.nft.json +1 -1
  40. package/.next-prod/server/app/api/chat/stop/route.js +1 -1
  41. package/.next-prod/server/app/api/chat/stop/route.js.nft.json +1 -1
  42. package/.next-prod/server/app/api/claude-stats/route.js +1 -1
  43. package/.next-prod/server/app/api/claude-stats/route.js.nft.json +1 -1
  44. package/.next-prod/server/app/api/commands/route.js +1 -1
  45. package/.next-prod/server/app/api/commands/route.js.nft.json +1 -1
  46. package/.next-prod/server/app/api/comments/route.js +1 -1
  47. package/.next-prod/server/app/api/comments/route.js.nft.json +1 -1
  48. package/.next-prod/server/app/api/db/columns/route.js +1 -1
  49. package/.next-prod/server/app/api/db/columns/route.js.nft.json +1 -1
  50. package/.next-prod/server/app/api/db/connect/route.js +2 -2
  51. package/.next-prod/server/app/api/db/connect/route.js.nft.json +1 -1
  52. package/.next-prod/server/app/api/db/disconnect/route.js +1 -1
  53. package/.next-prod/server/app/api/db/disconnect/route.js.nft.json +1 -1
  54. package/.next-prod/server/app/api/db/export/route.js +1 -1
  55. package/.next-prod/server/app/api/db/export/route.js.nft.json +1 -1
  56. package/.next-prod/server/app/api/db/query/route.js +1 -1
  57. package/.next-prod/server/app/api/db/query/route.js.nft.json +1 -1
  58. package/.next-prod/server/app/api/db/schemas/route.js +2 -2
  59. package/.next-prod/server/app/api/db/schemas/route.js.nft.json +1 -1
  60. package/.next-prod/server/app/api/deepseek/balance/route.js +1 -1
  61. package/.next-prod/server/app/api/deepseek/balance/route.js.nft.json +1 -1
  62. package/.next-prod/server/app/api/deepseek/credentials/route.js +1 -1
  63. package/.next-prod/server/app/api/deepseek/credentials/route.js.nft.json +1 -1
  64. package/.next-prod/server/app/api/deepseek/models/route.js +1 -1
  65. package/.next-prod/server/app/api/deepseek/models/route.js.nft.json +1 -1
  66. package/.next-prod/server/app/api/dev/spans/route.js +1 -1
  67. package/.next-prod/server/app/api/dev/spans/route.js.nft.json +1 -1
  68. package/.next-prod/server/app/api/extension/version/route.js +1 -1
  69. package/.next-prod/server/app/api/extension/version/route.js.nft.json +1 -1
  70. package/.next-prod/server/app/api/file/route.js +1 -1
  71. package/.next-prod/server/app/api/file/route.js.nft.json +1 -1
  72. package/.next-prod/server/app/api/files/blame/route.js +1 -1
  73. package/.next-prod/server/app/api/files/blame/route.js.nft.json +1 -1
  74. package/.next-prod/server/app/api/files/clipboard/route.js +1 -1
  75. package/.next-prod/server/app/api/files/clipboard/route.js.nft.json +1 -1
  76. package/.next-prod/server/app/api/files/copy/route.js +1 -1
  77. package/.next-prod/server/app/api/files/copy/route.js.nft.json +1 -1
  78. package/.next-prod/server/app/api/files/delete/route.js +1 -1
  79. package/.next-prod/server/app/api/files/delete/route.js.nft.json +1 -1
  80. package/.next-prod/server/app/api/files/expanded/route.js +1 -1
  81. package/.next-prod/server/app/api/files/expanded/route.js.nft.json +1 -1
  82. package/.next-prod/server/app/api/files/index/route.js +1 -1
  83. package/.next-prod/server/app/api/files/index/route.js.nft.json +1 -1
  84. package/.next-prod/server/app/api/files/init/route.js +1 -1
  85. package/.next-prod/server/app/api/files/init/route.js.nft.json +1 -1
  86. package/.next-prod/server/app/api/files/paste/route.js +1 -1
  87. package/.next-prod/server/app/api/files/paste/route.js.nft.json +1 -1
  88. package/.next-prod/server/app/api/files/read/route.js +1 -1
  89. package/.next-prod/server/app/api/files/read/route.js.nft.json +1 -1
  90. package/.next-prod/server/app/api/files/readdir/route.js +1 -1
  91. package/.next-prod/server/app/api/files/readdir/route.js.nft.json +1 -1
  92. package/.next-prod/server/app/api/files/recent/route.js +1 -1
  93. package/.next-prod/server/app/api/files/recent/route.js.nft.json +1 -1
  94. package/.next-prod/server/app/api/files/save/route.js +1 -1
  95. package/.next-prod/server/app/api/files/save/route.js.nft.json +1 -1
  96. package/.next-prod/server/app/api/files/search/route.js +1 -1
  97. package/.next-prod/server/app/api/files/search/route.js.nft.json +1 -1
  98. package/.next-prod/server/app/api/files/stat/route.js +1 -1
  99. package/.next-prod/server/app/api/files/stat/route.js.nft.json +1 -1
  100. package/.next-prod/server/app/api/files/text/route.js +1 -1
  101. package/.next-prod/server/app/api/files/text/route.js.nft.json +1 -1
  102. package/.next-prod/server/app/api/git/blob/route.js +1 -1
  103. package/.next-prod/server/app/api/git/blob/route.js.nft.json +1 -1
  104. package/.next-prod/server/app/api/git/branch-diff/route.js +1 -1
  105. package/.next-prod/server/app/api/git/branch-diff/route.js.nft.json +1 -1
  106. package/.next-prod/server/app/api/git/branches/route.js +1 -1
  107. package/.next-prod/server/app/api/git/branches/route.js.nft.json +1 -1
  108. package/.next-prod/server/app/api/git/commit-diff/route.js +1 -1
  109. package/.next-prod/server/app/api/git/commit-diff/route.js.nft.json +1 -1
  110. package/.next-prod/server/app/api/git/commits/route.js +1 -1
  111. package/.next-prod/server/app/api/git/commits/route.js.nft.json +1 -1
  112. package/.next-prod/server/app/api/git/current-branch/route.js +1 -1
  113. package/.next-prod/server/app/api/git/current-branch/route.js.nft.json +1 -1
  114. package/.next-prod/server/app/api/git/diff/route.js +1 -1
  115. package/.next-prod/server/app/api/git/diff/route.js.nft.json +1 -1
  116. package/.next-prod/server/app/api/git/discard/route.js +1 -1
  117. package/.next-prod/server/app/api/git/discard/route.js.nft.json +1 -1
  118. package/.next-prod/server/app/api/git/stage/route.js +1 -1
  119. package/.next-prod/server/app/api/git/stage/route.js.nft.json +1 -1
  120. package/.next-prod/server/app/api/git/status/route.js +1 -1
  121. package/.next-prod/server/app/api/git/status/route.js.nft.json +1 -1
  122. package/.next-prod/server/app/api/git/unstage/route.js +1 -1
  123. package/.next-prod/server/app/api/git/unstage/route.js.nft.json +1 -1
  124. package/.next-prod/server/app/api/git/worktree/route.js +1 -1
  125. package/.next-prod/server/app/api/git/worktree/route.js.nft.json +1 -1
  126. package/.next-prod/server/app/api/glm/credentials/route.js +1 -1
  127. package/.next-prod/server/app/api/glm/credentials/route.js.nft.json +1 -1
  128. package/.next-prod/server/app/api/glm/models/route.js +1 -1
  129. package/.next-prod/server/app/api/glm/models/route.js.nft.json +1 -1
  130. package/.next-prod/server/app/api/glm/usage/route.js +1 -1
  131. package/.next-prod/server/app/api/glm/usage/route.js.nft.json +1 -1
  132. package/.next-prod/server/app/api/global-state/route.js +1 -1
  133. package/.next-prod/server/app/api/global-state/route.js.nft.json +1 -1
  134. package/.next-prod/server/app/api/health/route.js +1 -1
  135. package/.next-prod/server/app/api/health/route.js.nft.json +1 -1
  136. package/.next-prod/server/app/api/html-apps/[id]/route.js +1 -1
  137. package/.next-prod/server/app/api/html-apps/[id]/route.js.nft.json +1 -1
  138. package/.next-prod/server/app/api/html-apps/route.js +1 -1
  139. package/.next-prod/server/app/api/html-apps/route.js.nft.json +1 -1
  140. package/.next-prod/server/app/api/jupyter/load/route.js +1 -1
  141. package/.next-prod/server/app/api/jupyter/load/route.js.nft.json +1 -1
  142. package/.next-prod/server/app/api/jupyter/save/route.js +1 -1
  143. package/.next-prod/server/app/api/jupyter/save/route.js.nft.json +1 -1
  144. package/.next-prod/server/app/api/jupyter/shutdown/route.js +1 -1
  145. package/.next-prod/server/app/api/jupyter/shutdown/route.js.nft.json +1 -1
  146. package/.next-prod/server/app/api/kimi/credentials/route.js +1 -1
  147. package/.next-prod/server/app/api/kimi/credentials/route.js.nft.json +1 -1
  148. package/.next-prod/server/app/api/kimi/models/route.js +1 -1
  149. package/.next-prod/server/app/api/kimi/models/route.js.nft.json +1 -1
  150. package/.next-prod/server/app/api/kimi/usage/route.js +1 -1
  151. package/.next-prod/server/app/api/kimi/usage/route.js.nft.json +1 -1
  152. package/.next-prod/server/app/api/lsp/definition/route.js +1 -1
  153. package/.next-prod/server/app/api/lsp/definition/route.js.nft.json +1 -1
  154. package/.next-prod/server/app/api/lsp/hover/route.js +1 -1
  155. package/.next-prod/server/app/api/lsp/hover/route.js.nft.json +1 -1
  156. package/.next-prod/server/app/api/lsp/references/route.js +1 -1
  157. package/.next-prod/server/app/api/lsp/references/route.js.nft.json +1 -1
  158. package/.next-prod/server/app/api/lsp/status/route.js +1 -1
  159. package/.next-prod/server/app/api/lsp/status/route.js.nft.json +1 -1
  160. package/.next-prod/server/app/api/lsp/warmup/route.js +1 -1
  161. package/.next-prod/server/app/api/lsp/warmup/route.js.nft.json +1 -1
  162. package/.next-prod/server/app/api/mysql/columns/route.js +1 -1
  163. package/.next-prod/server/app/api/mysql/columns/route.js.nft.json +1 -1
  164. package/.next-prod/server/app/api/mysql/connect/route.js +1 -1
  165. package/.next-prod/server/app/api/mysql/connect/route.js.nft.json +1 -1
  166. package/.next-prod/server/app/api/mysql/disconnect/route.js +1 -1
  167. package/.next-prod/server/app/api/mysql/disconnect/route.js.nft.json +1 -1
  168. package/.next-prod/server/app/api/mysql/export/route.js +1 -1
  169. package/.next-prod/server/app/api/mysql/export/route.js.nft.json +1 -1
  170. package/.next-prod/server/app/api/mysql/query/route.js +1 -1
  171. package/.next-prod/server/app/api/mysql/query/route.js.nft.json +1 -1
  172. package/.next-prod/server/app/api/mysql/schemas/route.js +2 -2
  173. package/.next-prod/server/app/api/mysql/schemas/route.js.nft.json +1 -1
  174. package/.next-prod/server/app/api/neo4j/connect/route.js +1 -1
  175. package/.next-prod/server/app/api/neo4j/connect/route.js.nft.json +1 -1
  176. package/.next-prod/server/app/api/neo4j/disconnect/route.js +1 -1
  177. package/.next-prod/server/app/api/neo4j/disconnect/route.js.nft.json +1 -1
  178. package/.next-prod/server/app/api/neo4j/query/route.js +1 -1
  179. package/.next-prod/server/app/api/neo4j/query/route.js.nft.json +1 -1
  180. package/.next-prod/server/app/api/neo4j/schema/route.js +1 -1
  181. package/.next-prod/server/app/api/neo4j/schema/route.js.nft.json +1 -1
  182. package/.next-prod/server/app/api/note/route.js +1 -1
  183. package/.next-prod/server/app/api/note/route.js.nft.json +1 -1
  184. package/.next-prod/server/app/api/ollama/config/route.js +1 -1
  185. package/.next-prod/server/app/api/ollama/config/route.js.nft.json +1 -1
  186. package/.next-prod/server/app/api/ollama/models/route.js +1 -1
  187. package/.next-prod/server/app/api/ollama/models/route.js.nft.json +1 -1
  188. package/.next-prod/server/app/api/ollama/start/route.js +1 -1
  189. package/.next-prod/server/app/api/ollama/start/route.js.nft.json +1 -1
  190. package/.next-prod/server/app/api/open-cursor/route.js +1 -1
  191. package/.next-prod/server/app/api/open-cursor/route.js.nft.json +1 -1
  192. package/.next-prod/server/app/api/open-vscode/route.js +1 -1
  193. package/.next-prod/server/app/api/open-vscode/route.js.nft.json +1 -1
  194. package/.next-prod/server/app/api/pick-folder/route.js +1 -1
  195. package/.next-prod/server/app/api/pick-folder/route.js.nft.json +1 -1
  196. package/.next-prod/server/app/api/pinned-sessions/route.js +1 -1
  197. package/.next-prod/server/app/api/pinned-sessions/route.js.nft.json +1 -1
  198. package/.next-prod/server/app/api/project-settings/route.js +1 -1
  199. package/.next-prod/server/app/api/project-settings/route.js.nft.json +1 -1
  200. package/.next-prod/server/app/api/project-state/route.js +2 -2
  201. package/.next-prod/server/app/api/project-state/route.js.nft.json +1 -1
  202. package/.next-prod/server/app/api/projectGraph/affected/route.js +1 -1
  203. package/.next-prod/server/app/api/projectGraph/affected/route.js.nft.json +1 -1
  204. package/.next-prod/server/app/api/projectGraph/callees/route.js +1 -1
  205. package/.next-prod/server/app/api/projectGraph/callees/route.js.nft.json +1 -1
  206. package/.next-prod/server/app/api/projectGraph/callers/route.js +1 -1
  207. package/.next-prod/server/app/api/projectGraph/callers/route.js.nft.json +1 -1
  208. package/.next-prod/server/app/api/projectGraph/coedit/route.js +1 -1
  209. package/.next-prod/server/app/api/projectGraph/coedit/route.js.nft.json +1 -1
  210. package/.next-prod/server/app/api/projectGraph/context/route.js +1 -1
  211. package/.next-prod/server/app/api/projectGraph/context/route.js.nft.json +1 -1
  212. package/.next-prod/server/app/api/projectGraph/file/route.js +1 -1
  213. package/.next-prod/server/app/api/projectGraph/file/route.js.nft.json +1 -1
  214. package/.next-prod/server/app/api/projectGraph/file-functions/route.js +1 -1
  215. package/.next-prod/server/app/api/projectGraph/file-functions/route.js.nft.json +1 -1
  216. package/.next-prod/server/app/api/projectGraph/impact/route.js +1 -1
  217. package/.next-prod/server/app/api/projectGraph/impact/route.js.nft.json +1 -1
  218. package/.next-prod/server/app/api/projectGraph/related/route.js +1 -1
  219. package/.next-prod/server/app/api/projectGraph/related/route.js.nft.json +1 -1
  220. package/.next-prod/server/app/api/projectGraph/risk/route.js +1 -1
  221. package/.next-prod/server/app/api/projectGraph/risk/route.js.nft.json +1 -1
  222. package/.next-prod/server/app/api/projectGraph/search/route.js +1 -1
  223. package/.next-prod/server/app/api/projectGraph/search/route.js.nft.json +1 -1
  224. package/.next-prod/server/app/api/projects/route.js +1 -1
  225. package/.next-prod/server/app/api/projects/route.js.nft.json +1 -1
  226. package/.next-prod/server/app/api/prompts/config/route.js +1 -1
  227. package/.next-prod/server/app/api/prompts/config/route.js.nft.json +1 -1
  228. package/.next-prod/server/app/api/push/public-key/route.js +1 -1
  229. package/.next-prod/server/app/api/push/public-key/route.js.nft.json +1 -1
  230. package/.next-prod/server/app/api/push/subscribe/route.js +1 -1
  231. package/.next-prod/server/app/api/push/subscribe/route.js.nft.json +1 -1
  232. package/.next-prod/server/app/api/push/unsubscribe/route.js +1 -1
  233. package/.next-prod/server/app/api/push/unsubscribe/route.js.nft.json +1 -1
  234. package/.next-prod/server/app/api/redis/command/route.js +1 -1
  235. package/.next-prod/server/app/api/redis/command/route.js.nft.json +1 -1
  236. package/.next-prod/server/app/api/redis/connect/route.js +1 -1
  237. package/.next-prod/server/app/api/redis/connect/route.js.nft.json +1 -1
  238. package/.next-prod/server/app/api/redis/delete/route.js +1 -1
  239. package/.next-prod/server/app/api/redis/delete/route.js.nft.json +1 -1
  240. package/.next-prod/server/app/api/redis/disconnect/route.js +1 -1
  241. package/.next-prod/server/app/api/redis/disconnect/route.js.nft.json +1 -1
  242. package/.next-prod/server/app/api/redis/get/route.js +1 -1
  243. package/.next-prod/server/app/api/redis/get/route.js.nft.json +1 -1
  244. package/.next-prod/server/app/api/redis/keys/route.js +1 -1
  245. package/.next-prod/server/app/api/redis/keys/route.js.nft.json +1 -1
  246. package/.next-prod/server/app/api/redis/set/route.js +1 -1
  247. package/.next-prod/server/app/api/redis/set/route.js.nft.json +1 -1
  248. package/.next-prod/server/app/api/restart/route.js +1 -1
  249. package/.next-prod/server/app/api/restart/route.js.nft.json +1 -1
  250. package/.next-prod/server/app/api/review/[id]/comments/route.js +1 -1
  251. package/.next-prod/server/app/api/review/[id]/comments/route.js.nft.json +1 -1
  252. package/.next-prod/server/app/api/review/[id]/replies/route.js +1 -1
  253. package/.next-prod/server/app/api/review/[id]/replies/route.js.nft.json +1 -1
  254. package/.next-prod/server/app/api/review/[id]/route.js +1 -1
  255. package/.next-prod/server/app/api/review/[id]/route.js.nft.json +1 -1
  256. package/.next-prod/server/app/api/review/identify/route.js +1 -1
  257. package/.next-prod/server/app/api/review/identify/route.js.nft.json +1 -1
  258. package/.next-prod/server/app/api/review/order/route.js +1 -1
  259. package/.next-prod/server/app/api/review/order/route.js.nft.json +1 -1
  260. package/.next-prod/server/app/api/review/route.js +1 -1
  261. package/.next-prod/server/app/api/review/route.js.nft.json +1 -1
  262. package/.next-prod/server/app/api/review/share-info/route.js +1 -1
  263. package/.next-prod/server/app/api/review/share-info/route.js.nft.json +1 -1
  264. package/.next-prod/server/app/api/review/users/route.js +1 -1
  265. package/.next-prod/server/app/api/review/users/route.js.nft.json +1 -1
  266. package/.next-prod/server/app/api/scheduled-tasks/route.js +2 -2
  267. package/.next-prod/server/app/api/scheduled-tasks/route.js.nft.json +1 -1
  268. package/.next-prod/server/app/api/services/config/route.js +1 -1
  269. package/.next-prod/server/app/api/services/config/route.js.nft.json +1 -1
  270. package/.next-prod/server/app/api/services/scripts/route.js +1 -1
  271. package/.next-prod/server/app/api/services/scripts/route.js.nft.json +1 -1
  272. package/.next-prod/server/app/api/session/[sessionId]/fork/route.js +1 -1
  273. package/.next-prod/server/app/api/session/[sessionId]/fork/route.js.nft.json +1 -1
  274. package/.next-prod/server/app/api/session/[sessionId]/history/route.js +1 -1
  275. package/.next-prod/server/app/api/session/[sessionId]/history/route.js.nft.json +1 -1
  276. package/.next-prod/server/app/api/session-by-path/route.js +1 -1
  277. package/.next-prod/server/app/api/session-by-path/route.js.nft.json +1 -1
  278. package/.next-prod/server/app/api/sessions/projects/[encodedPath]/route.js +1 -1
  279. package/.next-prod/server/app/api/sessions/projects/[encodedPath]/route.js.nft.json +1 -1
  280. package/.next-prod/server/app/api/sessions/projects/route.js +1 -1
  281. package/.next-prod/server/app/api/sessions/projects/route.js.nft.json +1 -1
  282. package/.next-prod/server/app/api/sessions/route.js +1 -1
  283. package/.next-prod/server/app/api/sessions/route.js.nft.json +1 -1
  284. package/.next-prod/server/app/api/settings/route.js +1 -1
  285. package/.next-prod/server/app/api/settings/route.js.nft.json +1 -1
  286. package/.next-prod/server/app/api/shutdown/route.js +1 -1
  287. package/.next-prod/server/app/api/shutdown/route.js.nft.json +1 -1
  288. package/.next-prod/server/app/api/skills/[id]/route.js +1 -1
  289. package/.next-prod/server/app/api/skills/[id]/route.js.nft.json +1 -1
  290. package/.next-prod/server/app/api/skills/content/route.js +1 -1
  291. package/.next-prod/server/app/api/skills/content/route.js.nft.json +1 -1
  292. package/.next-prod/server/app/api/skills/route.js +1 -1
  293. package/.next-prod/server/app/api/skills/route.js.nft.json +1 -1
  294. package/.next-prod/server/app/api/snapshots/blob/route.js +1 -0
  295. package/.next-prod/server/app/api/snapshots/blob/route.js.nft.json +1 -0
  296. package/.next-prod/server/app/api/snapshots/blob/route_client-reference-manifest.js +1 -0
  297. package/.next-prod/server/app/api/snapshots/diff/route.js +1 -1
  298. package/.next-prod/server/app/api/snapshots/diff/route.js.nft.json +1 -1
  299. package/.next-prod/server/app/api/snapshots/route.js +1 -1
  300. package/.next-prod/server/app/api/snapshots/route.js.nft.json +1 -1
  301. package/.next-prod/server/app/api/terminal/aliases/route.js +1 -1
  302. package/.next-prod/server/app/api/terminal/aliases/route.js.nft.json +1 -1
  303. package/.next-prod/server/app/api/terminal/autocomplete/route.js +1 -1
  304. package/.next-prod/server/app/api/terminal/autocomplete/route.js.nft.json +1 -1
  305. package/.next-prod/server/app/api/terminal/bubble-order/route.js +1 -1
  306. package/.next-prod/server/app/api/terminal/bubble-order/route.js.nft.json +1 -1
  307. package/.next-prod/server/app/api/terminal/env/route.js +1 -1
  308. package/.next-prod/server/app/api/terminal/env/route.js.nft.json +1 -1
  309. package/.next-prod/server/app/api/terminal/history/route.js +1 -1
  310. package/.next-prod/server/app/api/terminal/history/route.js.nft.json +1 -1
  311. package/.next-prod/server/app/api/update/route.js +1 -1
  312. package/.next-prod/server/app/api/update/route.js.nft.json +1 -1
  313. package/.next-prod/server/app/api/update-state/route.js +1 -1
  314. package/.next-prod/server/app/api/update-state/route.js.nft.json +1 -1
  315. package/.next-prod/server/app/api/version/route.js +1 -1
  316. package/.next-prod/server/app/api/version/route.js.nft.json +1 -1
  317. package/.next-prod/server/app/apps/[...path]/route.js +1 -1
  318. package/.next-prod/server/app/apps/[...path]/route.js.nft.json +1 -1
  319. package/.next-prod/server/app/favicon.ico/route.js +1 -1
  320. package/.next-prod/server/app/favicon.ico/route.js.nft.json +1 -1
  321. package/.next-prod/server/app/m/page.js +1 -1
  322. package/.next-prod/server/app/m/page.js.nft.json +1 -1
  323. package/.next-prod/server/app/m/page_client-reference-manifest.js +1 -1
  324. package/.next-prod/server/app/manifest.webmanifest/route.js +2 -2
  325. package/.next-prod/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  326. package/.next-prod/server/app/page.js +1 -1
  327. package/.next-prod/server/app/page.js.nft.json +1 -1
  328. package/.next-prod/server/app/page_client-reference-manifest.js +1 -1
  329. package/.next-prod/server/app/project/page.js +1 -1
  330. package/.next-prod/server/app/project/page.js.nft.json +1 -1
  331. package/.next-prod/server/app/project/page_client-reference-manifest.js +1 -1
  332. package/.next-prod/server/app/review/[id]/page.js +1 -1
  333. package/.next-prod/server/app/review/[id]/page.js.nft.json +1 -1
  334. package/.next-prod/server/app/review/[id]/page_client-reference-manifest.js +1 -1
  335. package/.next-prod/server/app-paths-manifest.json +5 -4
  336. package/.next-prod/server/chunks/2493.js +3 -3
  337. package/.next-prod/server/chunks/3286.js +2 -2
  338. package/.next-prod/server/chunks/4949.js +1 -0
  339. package/.next-prod/server/chunks/516.js +1 -1
  340. package/.next-prod/server/chunks/5750.js +15 -16
  341. package/.next-prod/server/chunks/6548.js +1 -1
  342. package/.next-prod/server/chunks/7184.js +4 -4
  343. package/.next-prod/server/chunks/816.js +1 -1
  344. package/.next-prod/server/chunks/9312.js +1 -1
  345. package/.next-prod/server/chunks/9352.js +1 -1
  346. package/.next-prod/server/middleware-build-manifest.js +1 -1
  347. package/.next-prod/server/pages/404.html +2 -2
  348. package/.next-prod/server/pages/500.html +1 -1
  349. package/.next-prod/server/server-reference-manifest.json +1 -1
  350. package/.next-prod/static/U8R610UNAk7MWsuSmrm28/_buildManifest.js +1 -0
  351. package/.next-prod/static/chunks/33372-5305e3772ba46050.js +34 -0
  352. package/.next-prod/static/chunks/46784-ff535f686b295919.js +716 -0
  353. package/.next-prod/static/chunks/{14333-ced10f36441c568c.js → 5504-583edbefcb22ed17.js} +7 -7
  354. package/.next-prod/static/chunks/{86160-b6431f3093820d49.js → 56819-56e9c6ff8d86d236.js} +1 -1
  355. package/.next-prod/static/chunks/96911-08609dc685108dcc.js +15 -0
  356. package/.next-prod/static/chunks/app/_global-error/{page-c1a2c7e62ce669f7.js → page-db8b43ac5e6e9ac5.js} +1 -1
  357. package/.next-prod/static/chunks/app/api/agent/test/{route-c1a2c7e62ce669f7.js → route-db8b43ac5e6e9ac5.js} +1 -1
  358. package/.next-prod/static/chunks/app/api/bash/{route-c1a2c7e62ce669f7.js → route-db8b43ac5e6e9ac5.js} +1 -1
  359. package/.next-prod/static/chunks/app/api/chat/codex/{route-c1a2c7e62ce669f7.js → route-db8b43ac5e6e9ac5.js} +1 -1
  360. package/.next-prod/static/chunks/app/api/chat/deepseek/route-db8b43ac5e6e9ac5.js +1 -0
  361. package/.next-prod/static/chunks/app/api/chat/glm/route-db8b43ac5e6e9ac5.js +1 -0
  362. package/.next-prod/static/chunks/app/api/chat/kimi/route-db8b43ac5e6e9ac5.js +1 -0
  363. package/.next-prod/static/chunks/app/api/chat/ollama/route-db8b43ac5e6e9ac5.js +1 -0
  364. package/.next-prod/static/chunks/app/api/chat/route-db8b43ac5e6e9ac5.js +1 -0
  365. package/.next-prod/static/chunks/app/api/chat/stop/route-db8b43ac5e6e9ac5.js +1 -0
  366. package/.next-prod/static/chunks/app/api/claude-stats/route-db8b43ac5e6e9ac5.js +1 -0
  367. package/.next-prod/static/chunks/app/api/commands/route-db8b43ac5e6e9ac5.js +1 -0
  368. package/.next-prod/static/chunks/app/api/comments/route-db8b43ac5e6e9ac5.js +1 -0
  369. package/.next-prod/static/chunks/app/api/db/columns/route-db8b43ac5e6e9ac5.js +1 -0
  370. package/.next-prod/static/chunks/app/api/db/connect/route-db8b43ac5e6e9ac5.js +1 -0
  371. package/.next-prod/static/chunks/app/api/db/disconnect/route-db8b43ac5e6e9ac5.js +1 -0
  372. package/.next-prod/static/chunks/app/api/db/export/route-db8b43ac5e6e9ac5.js +1 -0
  373. package/.next-prod/static/chunks/app/api/db/query/route-db8b43ac5e6e9ac5.js +1 -0
  374. package/.next-prod/static/chunks/app/api/db/schemas/route-db8b43ac5e6e9ac5.js +1 -0
  375. package/.next-prod/static/chunks/app/api/deepseek/balance/route-db8b43ac5e6e9ac5.js +1 -0
  376. package/.next-prod/static/chunks/app/api/deepseek/credentials/route-db8b43ac5e6e9ac5.js +1 -0
  377. package/.next-prod/static/chunks/app/api/deepseek/models/route-db8b43ac5e6e9ac5.js +1 -0
  378. package/.next-prod/static/chunks/app/api/dev/spans/route-db8b43ac5e6e9ac5.js +1 -0
  379. package/.next-prod/static/chunks/app/api/extension/version/route-db8b43ac5e6e9ac5.js +1 -0
  380. package/.next-prod/static/chunks/app/api/file/route-db8b43ac5e6e9ac5.js +1 -0
  381. package/.next-prod/static/chunks/app/api/files/blame/route-db8b43ac5e6e9ac5.js +1 -0
  382. package/.next-prod/static/chunks/app/api/files/clipboard/route-db8b43ac5e6e9ac5.js +1 -0
  383. package/.next-prod/static/chunks/app/api/files/copy/route-db8b43ac5e6e9ac5.js +1 -0
  384. package/.next-prod/static/chunks/app/api/files/delete/route-db8b43ac5e6e9ac5.js +1 -0
  385. package/.next-prod/static/chunks/app/api/files/expanded/route-db8b43ac5e6e9ac5.js +1 -0
  386. package/.next-prod/static/chunks/app/api/files/index/route-db8b43ac5e6e9ac5.js +1 -0
  387. package/.next-prod/static/chunks/app/api/files/init/route-db8b43ac5e6e9ac5.js +1 -0
  388. package/.next-prod/static/chunks/app/api/files/paste/route-db8b43ac5e6e9ac5.js +1 -0
  389. package/.next-prod/static/chunks/app/api/files/read/route-db8b43ac5e6e9ac5.js +1 -0
  390. package/.next-prod/static/chunks/app/api/files/readdir/route-db8b43ac5e6e9ac5.js +1 -0
  391. package/.next-prod/static/chunks/app/api/files/recent/route-db8b43ac5e6e9ac5.js +1 -0
  392. package/.next-prod/static/chunks/app/api/files/save/route-db8b43ac5e6e9ac5.js +1 -0
  393. package/.next-prod/static/chunks/app/api/files/search/route-db8b43ac5e6e9ac5.js +1 -0
  394. package/.next-prod/static/chunks/app/api/files/stat/route-db8b43ac5e6e9ac5.js +1 -0
  395. package/.next-prod/static/chunks/app/api/files/text/route-db8b43ac5e6e9ac5.js +1 -0
  396. package/.next-prod/static/chunks/app/api/git/blob/route-db8b43ac5e6e9ac5.js +1 -0
  397. package/.next-prod/static/chunks/app/api/git/branch-diff/route-db8b43ac5e6e9ac5.js +1 -0
  398. package/.next-prod/static/chunks/app/api/git/branches/route-db8b43ac5e6e9ac5.js +1 -0
  399. package/.next-prod/static/chunks/app/api/git/commit-diff/route-db8b43ac5e6e9ac5.js +1 -0
  400. package/.next-prod/static/chunks/app/api/git/commits/route-db8b43ac5e6e9ac5.js +1 -0
  401. package/.next-prod/static/chunks/app/api/git/current-branch/route-db8b43ac5e6e9ac5.js +1 -0
  402. package/.next-prod/static/chunks/app/api/git/diff/route-db8b43ac5e6e9ac5.js +1 -0
  403. package/.next-prod/static/chunks/app/api/git/discard/route-db8b43ac5e6e9ac5.js +1 -0
  404. package/.next-prod/static/chunks/app/api/git/stage/route-db8b43ac5e6e9ac5.js +1 -0
  405. package/.next-prod/static/chunks/app/api/git/status/route-db8b43ac5e6e9ac5.js +1 -0
  406. package/.next-prod/static/chunks/app/api/git/unstage/route-db8b43ac5e6e9ac5.js +1 -0
  407. package/.next-prod/static/chunks/app/api/git/worktree/route-db8b43ac5e6e9ac5.js +1 -0
  408. package/.next-prod/static/chunks/app/api/glm/credentials/route-db8b43ac5e6e9ac5.js +1 -0
  409. package/.next-prod/static/chunks/app/api/glm/models/route-db8b43ac5e6e9ac5.js +1 -0
  410. package/.next-prod/static/chunks/app/api/glm/usage/route-db8b43ac5e6e9ac5.js +1 -0
  411. package/.next-prod/static/chunks/app/api/global-state/route-db8b43ac5e6e9ac5.js +1 -0
  412. package/.next-prod/static/chunks/app/api/health/route-db8b43ac5e6e9ac5.js +1 -0
  413. package/.next-prod/static/chunks/app/api/html-apps/[id]/route-db8b43ac5e6e9ac5.js +1 -0
  414. package/.next-prod/static/chunks/app/api/html-apps/route-db8b43ac5e6e9ac5.js +1 -0
  415. package/.next-prod/static/chunks/app/api/jupyter/load/route-db8b43ac5e6e9ac5.js +1 -0
  416. package/.next-prod/static/chunks/app/api/jupyter/save/route-db8b43ac5e6e9ac5.js +1 -0
  417. package/.next-prod/static/chunks/app/api/jupyter/shutdown/route-db8b43ac5e6e9ac5.js +1 -0
  418. package/.next-prod/static/chunks/app/api/kimi/credentials/route-db8b43ac5e6e9ac5.js +1 -0
  419. package/.next-prod/static/chunks/app/api/kimi/models/route-db8b43ac5e6e9ac5.js +1 -0
  420. package/.next-prod/static/chunks/app/api/kimi/usage/route-db8b43ac5e6e9ac5.js +1 -0
  421. package/.next-prod/static/chunks/app/api/lsp/definition/route-db8b43ac5e6e9ac5.js +1 -0
  422. package/.next-prod/static/chunks/app/api/lsp/hover/route-db8b43ac5e6e9ac5.js +1 -0
  423. package/.next-prod/static/chunks/app/api/lsp/references/route-db8b43ac5e6e9ac5.js +1 -0
  424. package/.next-prod/static/chunks/app/api/lsp/status/route-db8b43ac5e6e9ac5.js +1 -0
  425. package/.next-prod/static/chunks/app/api/lsp/warmup/route-db8b43ac5e6e9ac5.js +1 -0
  426. package/.next-prod/static/chunks/app/api/mysql/columns/route-db8b43ac5e6e9ac5.js +1 -0
  427. package/.next-prod/static/chunks/app/api/mysql/connect/route-db8b43ac5e6e9ac5.js +1 -0
  428. package/.next-prod/static/chunks/app/api/mysql/disconnect/route-db8b43ac5e6e9ac5.js +1 -0
  429. package/.next-prod/static/chunks/app/api/mysql/export/route-db8b43ac5e6e9ac5.js +1 -0
  430. package/.next-prod/static/chunks/app/api/mysql/query/route-db8b43ac5e6e9ac5.js +1 -0
  431. package/.next-prod/static/chunks/app/api/mysql/schemas/route-db8b43ac5e6e9ac5.js +1 -0
  432. package/.next-prod/static/chunks/app/api/neo4j/connect/route-db8b43ac5e6e9ac5.js +1 -0
  433. package/.next-prod/static/chunks/app/api/neo4j/disconnect/route-db8b43ac5e6e9ac5.js +1 -0
  434. package/.next-prod/static/chunks/app/api/neo4j/query/route-db8b43ac5e6e9ac5.js +1 -0
  435. package/.next-prod/static/chunks/app/api/neo4j/schema/route-db8b43ac5e6e9ac5.js +1 -0
  436. package/.next-prod/static/chunks/app/api/note/route-db8b43ac5e6e9ac5.js +1 -0
  437. package/.next-prod/static/chunks/app/api/ollama/config/route-db8b43ac5e6e9ac5.js +1 -0
  438. package/.next-prod/static/chunks/app/api/ollama/models/route-db8b43ac5e6e9ac5.js +1 -0
  439. package/.next-prod/static/chunks/app/api/ollama/start/route-db8b43ac5e6e9ac5.js +1 -0
  440. package/.next-prod/static/chunks/app/api/open-cursor/route-db8b43ac5e6e9ac5.js +1 -0
  441. package/.next-prod/static/chunks/app/api/open-vscode/route-db8b43ac5e6e9ac5.js +1 -0
  442. package/.next-prod/static/chunks/app/api/pick-folder/route-db8b43ac5e6e9ac5.js +1 -0
  443. package/.next-prod/static/chunks/app/api/pinned-sessions/route-db8b43ac5e6e9ac5.js +1 -0
  444. package/.next-prod/static/chunks/app/api/project-settings/route-db8b43ac5e6e9ac5.js +1 -0
  445. package/.next-prod/static/chunks/app/api/project-state/route-db8b43ac5e6e9ac5.js +1 -0
  446. package/.next-prod/static/chunks/app/api/projectGraph/affected/route-db8b43ac5e6e9ac5.js +1 -0
  447. package/.next-prod/static/chunks/app/api/projectGraph/callees/route-db8b43ac5e6e9ac5.js +1 -0
  448. package/.next-prod/static/chunks/app/api/projectGraph/callers/route-db8b43ac5e6e9ac5.js +1 -0
  449. package/.next-prod/static/chunks/app/api/projectGraph/coedit/route-db8b43ac5e6e9ac5.js +1 -0
  450. package/.next-prod/static/chunks/app/api/projectGraph/context/route-db8b43ac5e6e9ac5.js +1 -0
  451. package/.next-prod/static/chunks/app/api/projectGraph/file/route-db8b43ac5e6e9ac5.js +1 -0
  452. package/.next-prod/static/chunks/app/api/projectGraph/file-functions/route-db8b43ac5e6e9ac5.js +1 -0
  453. package/.next-prod/static/chunks/app/api/projectGraph/impact/route-db8b43ac5e6e9ac5.js +1 -0
  454. package/.next-prod/static/chunks/app/api/projectGraph/related/route-db8b43ac5e6e9ac5.js +1 -0
  455. package/.next-prod/static/chunks/app/api/projectGraph/risk/route-db8b43ac5e6e9ac5.js +1 -0
  456. package/.next-prod/static/chunks/app/api/projectGraph/search/route-db8b43ac5e6e9ac5.js +1 -0
  457. package/.next-prod/static/chunks/app/api/projects/route-db8b43ac5e6e9ac5.js +1 -0
  458. package/.next-prod/static/chunks/app/api/prompts/config/route-db8b43ac5e6e9ac5.js +1 -0
  459. package/.next-prod/static/chunks/app/api/push/public-key/route-db8b43ac5e6e9ac5.js +1 -0
  460. package/.next-prod/static/chunks/app/api/push/subscribe/route-db8b43ac5e6e9ac5.js +1 -0
  461. package/.next-prod/static/chunks/app/api/push/unsubscribe/route-db8b43ac5e6e9ac5.js +1 -0
  462. package/.next-prod/static/chunks/app/api/redis/command/route-db8b43ac5e6e9ac5.js +1 -0
  463. package/.next-prod/static/chunks/app/api/redis/connect/route-db8b43ac5e6e9ac5.js +1 -0
  464. package/.next-prod/static/chunks/app/api/redis/delete/route-db8b43ac5e6e9ac5.js +1 -0
  465. package/.next-prod/static/chunks/app/api/redis/disconnect/route-db8b43ac5e6e9ac5.js +1 -0
  466. package/.next-prod/static/chunks/app/api/redis/get/route-db8b43ac5e6e9ac5.js +1 -0
  467. package/.next-prod/static/chunks/app/api/redis/keys/route-db8b43ac5e6e9ac5.js +1 -0
  468. package/.next-prod/static/chunks/app/api/redis/set/route-db8b43ac5e6e9ac5.js +1 -0
  469. package/.next-prod/static/chunks/app/api/restart/route-db8b43ac5e6e9ac5.js +1 -0
  470. package/.next-prod/static/chunks/app/api/review/[id]/comments/route-db8b43ac5e6e9ac5.js +1 -0
  471. package/.next-prod/static/chunks/app/api/review/[id]/replies/route-db8b43ac5e6e9ac5.js +1 -0
  472. package/.next-prod/static/chunks/app/api/review/[id]/route-db8b43ac5e6e9ac5.js +1 -0
  473. package/.next-prod/static/chunks/app/api/review/identify/route-db8b43ac5e6e9ac5.js +1 -0
  474. package/.next-prod/static/chunks/app/api/review/order/route-db8b43ac5e6e9ac5.js +1 -0
  475. package/.next-prod/static/chunks/app/api/review/route-db8b43ac5e6e9ac5.js +1 -0
  476. package/.next-prod/static/chunks/app/api/review/share-info/route-db8b43ac5e6e9ac5.js +1 -0
  477. package/.next-prod/static/chunks/app/api/review/users/route-db8b43ac5e6e9ac5.js +1 -0
  478. package/.next-prod/static/chunks/app/api/scheduled-tasks/route-db8b43ac5e6e9ac5.js +1 -0
  479. package/.next-prod/static/chunks/app/api/services/config/route-db8b43ac5e6e9ac5.js +1 -0
  480. package/.next-prod/static/chunks/app/api/services/scripts/route-db8b43ac5e6e9ac5.js +1 -0
  481. package/.next-prod/static/chunks/app/api/session/[sessionId]/fork/route-db8b43ac5e6e9ac5.js +1 -0
  482. package/.next-prod/static/chunks/app/api/session/[sessionId]/history/route-db8b43ac5e6e9ac5.js +1 -0
  483. package/.next-prod/static/chunks/app/api/session-by-path/route-db8b43ac5e6e9ac5.js +1 -0
  484. package/.next-prod/static/chunks/app/api/sessions/projects/[encodedPath]/route-db8b43ac5e6e9ac5.js +1 -0
  485. package/.next-prod/static/chunks/app/api/sessions/projects/route-db8b43ac5e6e9ac5.js +1 -0
  486. package/.next-prod/static/chunks/app/api/sessions/route-db8b43ac5e6e9ac5.js +1 -0
  487. package/.next-prod/static/chunks/app/api/settings/route-db8b43ac5e6e9ac5.js +1 -0
  488. package/.next-prod/static/chunks/app/api/shutdown/route-db8b43ac5e6e9ac5.js +1 -0
  489. package/.next-prod/static/chunks/app/api/skills/[id]/route-db8b43ac5e6e9ac5.js +1 -0
  490. package/.next-prod/static/chunks/app/api/skills/content/route-db8b43ac5e6e9ac5.js +1 -0
  491. package/.next-prod/static/chunks/app/api/skills/route-db8b43ac5e6e9ac5.js +1 -0
  492. package/.next-prod/static/chunks/app/api/snapshots/blob/route-db8b43ac5e6e9ac5.js +1 -0
  493. package/.next-prod/static/chunks/app/api/snapshots/diff/route-db8b43ac5e6e9ac5.js +1 -0
  494. package/.next-prod/static/chunks/app/api/snapshots/route-db8b43ac5e6e9ac5.js +1 -0
  495. package/.next-prod/static/chunks/app/api/terminal/aliases/route-db8b43ac5e6e9ac5.js +1 -0
  496. package/.next-prod/static/chunks/app/api/terminal/autocomplete/route-db8b43ac5e6e9ac5.js +1 -0
  497. package/.next-prod/static/chunks/app/api/terminal/bubble-order/route-db8b43ac5e6e9ac5.js +1 -0
  498. package/.next-prod/static/chunks/app/api/terminal/env/route-db8b43ac5e6e9ac5.js +1 -0
  499. package/.next-prod/static/chunks/app/api/terminal/history/route-db8b43ac5e6e9ac5.js +1 -0
  500. package/.next-prod/static/chunks/app/api/update/route-db8b43ac5e6e9ac5.js +1 -0
  501. package/.next-prod/static/chunks/app/api/update-state/route-db8b43ac5e6e9ac5.js +1 -0
  502. package/.next-prod/static/chunks/app/api/version/route-db8b43ac5e6e9ac5.js +1 -0
  503. package/.next-prod/static/chunks/app/apps/[...path]/route-db8b43ac5e6e9ac5.js +1 -0
  504. package/.next-prod/static/chunks/app/{layout-2e2ffdc76c7f77f6.js → layout-65e8647a35bd5ef0.js} +1 -1
  505. package/.next-prod/static/chunks/app/m/page-69cf611ceae66f33.js +1 -0
  506. package/.next-prod/static/chunks/app/manifest.webmanifest/route-db8b43ac5e6e9ac5.js +1 -0
  507. package/.next-prod/static/chunks/app/page-6931b763a22d95be.js +1 -0
  508. package/.next-prod/static/chunks/app/project/page-6931b763a22d95be.js +1 -0
  509. package/.next-prod/static/chunks/next/dist/client/components/builtin/app-error-db8b43ac5e6e9ac5.js +1 -0
  510. package/.next-prod/static/chunks/next/dist/client/components/builtin/forbidden-db8b43ac5e6e9ac5.js +1 -0
  511. package/.next-prod/static/chunks/next/dist/client/components/builtin/not-found-db8b43ac5e6e9ac5.js +1 -0
  512. package/.next-prod/static/chunks/next/dist/client/components/builtin/unauthorized-db8b43ac5e6e9ac5.js +1 -0
  513. package/.next-prod/static/css/303e8ac791ff3d31.css +1 -0
  514. package/.next-prod/trace +15 -14
  515. package/.next-prod/trace-build +1 -1
  516. package/.next-prod/types/app/api/snapshots/blob/route.ts +353 -0
  517. package/.next-prod/types/routes.d.ts +2 -1
  518. package/.next-prod/types/validator.ts +9 -0
  519. package/apps/file-viewer/app.jsx +83 -8
  520. package/apps/file-viewer/index.html +23 -1
  521. package/bin/cock-service.mjs +10 -8
  522. package/bin/cock.mjs +8 -6
  523. package/bin/postinstall.mjs +9 -8
  524. package/bin/updater.mjs +64 -26
  525. package/dist/{chunk-ZE2JXL6E.mjs → chunk-ETYX2YQF.mjs} +141 -59
  526. package/dist/{chunk-FBAFMLUC.mjs → chunk-SAKRITIQ.mjs} +3 -2
  527. package/dist/{chunk-H6AI4XJC.mjs → chunk-SGUW2QJI.mjs} +1 -1
  528. package/dist/httpApi.mjs +2 -2
  529. package/dist/scheduledTasks.mjs +212 -43
  530. package/dist/{server-HRP33LCV.mjs → server-C6LPAKPM.mjs} +2 -2
  531. package/dist/wsServer.mjs +20 -6
  532. package/package.json +6 -5
  533. package/public/html-lib/csv-viewer.css +416 -0
  534. package/public/html-lib/csv-viewer.js +100 -0
  535. package/public/html-lib/json-viewer.js +15 -15
  536. package/scripts/agentBinaries.mjs +86 -0
  537. package/.next-prod/server/chunks/9281.js +0 -1
  538. package/.next-prod/static/chunks/21372-8169ef641d8dec08.js +0 -15
  539. package/.next-prod/static/chunks/33940-eab092c09e660ac7.js +0 -35
  540. package/.next-prod/static/chunks/46784-55eed87a21c4c989.js +0 -716
  541. package/.next-prod/static/chunks/app/api/chat/deepseek/route-c1a2c7e62ce669f7.js +0 -1
  542. package/.next-prod/static/chunks/app/api/chat/glm/route-c1a2c7e62ce669f7.js +0 -1
  543. package/.next-prod/static/chunks/app/api/chat/kimi/route-c1a2c7e62ce669f7.js +0 -1
  544. package/.next-prod/static/chunks/app/api/chat/ollama/route-c1a2c7e62ce669f7.js +0 -1
  545. package/.next-prod/static/chunks/app/api/chat/route-c1a2c7e62ce669f7.js +0 -1
  546. package/.next-prod/static/chunks/app/api/chat/stop/route-c1a2c7e62ce669f7.js +0 -1
  547. package/.next-prod/static/chunks/app/api/claude-stats/route-c1a2c7e62ce669f7.js +0 -1
  548. package/.next-prod/static/chunks/app/api/commands/route-c1a2c7e62ce669f7.js +0 -1
  549. package/.next-prod/static/chunks/app/api/comments/route-c1a2c7e62ce669f7.js +0 -1
  550. package/.next-prod/static/chunks/app/api/db/columns/route-c1a2c7e62ce669f7.js +0 -1
  551. package/.next-prod/static/chunks/app/api/db/connect/route-c1a2c7e62ce669f7.js +0 -1
  552. package/.next-prod/static/chunks/app/api/db/disconnect/route-c1a2c7e62ce669f7.js +0 -1
  553. package/.next-prod/static/chunks/app/api/db/export/route-c1a2c7e62ce669f7.js +0 -1
  554. package/.next-prod/static/chunks/app/api/db/query/route-c1a2c7e62ce669f7.js +0 -1
  555. package/.next-prod/static/chunks/app/api/db/schemas/route-c1a2c7e62ce669f7.js +0 -1
  556. package/.next-prod/static/chunks/app/api/deepseek/balance/route-c1a2c7e62ce669f7.js +0 -1
  557. package/.next-prod/static/chunks/app/api/deepseek/credentials/route-c1a2c7e62ce669f7.js +0 -1
  558. package/.next-prod/static/chunks/app/api/deepseek/models/route-c1a2c7e62ce669f7.js +0 -1
  559. package/.next-prod/static/chunks/app/api/dev/spans/route-c1a2c7e62ce669f7.js +0 -1
  560. package/.next-prod/static/chunks/app/api/extension/version/route-c1a2c7e62ce669f7.js +0 -1
  561. package/.next-prod/static/chunks/app/api/file/route-c1a2c7e62ce669f7.js +0 -1
  562. package/.next-prod/static/chunks/app/api/files/blame/route-c1a2c7e62ce669f7.js +0 -1
  563. package/.next-prod/static/chunks/app/api/files/clipboard/route-c1a2c7e62ce669f7.js +0 -1
  564. package/.next-prod/static/chunks/app/api/files/copy/route-c1a2c7e62ce669f7.js +0 -1
  565. package/.next-prod/static/chunks/app/api/files/delete/route-c1a2c7e62ce669f7.js +0 -1
  566. package/.next-prod/static/chunks/app/api/files/expanded/route-c1a2c7e62ce669f7.js +0 -1
  567. package/.next-prod/static/chunks/app/api/files/index/route-c1a2c7e62ce669f7.js +0 -1
  568. package/.next-prod/static/chunks/app/api/files/init/route-c1a2c7e62ce669f7.js +0 -1
  569. package/.next-prod/static/chunks/app/api/files/paste/route-c1a2c7e62ce669f7.js +0 -1
  570. package/.next-prod/static/chunks/app/api/files/read/route-c1a2c7e62ce669f7.js +0 -1
  571. package/.next-prod/static/chunks/app/api/files/readdir/route-c1a2c7e62ce669f7.js +0 -1
  572. package/.next-prod/static/chunks/app/api/files/recent/route-c1a2c7e62ce669f7.js +0 -1
  573. package/.next-prod/static/chunks/app/api/files/save/route-c1a2c7e62ce669f7.js +0 -1
  574. package/.next-prod/static/chunks/app/api/files/search/route-c1a2c7e62ce669f7.js +0 -1
  575. package/.next-prod/static/chunks/app/api/files/stat/route-c1a2c7e62ce669f7.js +0 -1
  576. package/.next-prod/static/chunks/app/api/files/text/route-c1a2c7e62ce669f7.js +0 -1
  577. package/.next-prod/static/chunks/app/api/git/blob/route-c1a2c7e62ce669f7.js +0 -1
  578. package/.next-prod/static/chunks/app/api/git/branch-diff/route-c1a2c7e62ce669f7.js +0 -1
  579. package/.next-prod/static/chunks/app/api/git/branches/route-c1a2c7e62ce669f7.js +0 -1
  580. package/.next-prod/static/chunks/app/api/git/commit-diff/route-c1a2c7e62ce669f7.js +0 -1
  581. package/.next-prod/static/chunks/app/api/git/commits/route-c1a2c7e62ce669f7.js +0 -1
  582. package/.next-prod/static/chunks/app/api/git/current-branch/route-c1a2c7e62ce669f7.js +0 -1
  583. package/.next-prod/static/chunks/app/api/git/diff/route-c1a2c7e62ce669f7.js +0 -1
  584. package/.next-prod/static/chunks/app/api/git/discard/route-c1a2c7e62ce669f7.js +0 -1
  585. package/.next-prod/static/chunks/app/api/git/stage/route-c1a2c7e62ce669f7.js +0 -1
  586. package/.next-prod/static/chunks/app/api/git/status/route-c1a2c7e62ce669f7.js +0 -1
  587. package/.next-prod/static/chunks/app/api/git/unstage/route-c1a2c7e62ce669f7.js +0 -1
  588. package/.next-prod/static/chunks/app/api/git/worktree/route-c1a2c7e62ce669f7.js +0 -1
  589. package/.next-prod/static/chunks/app/api/glm/credentials/route-c1a2c7e62ce669f7.js +0 -1
  590. package/.next-prod/static/chunks/app/api/glm/models/route-c1a2c7e62ce669f7.js +0 -1
  591. package/.next-prod/static/chunks/app/api/glm/usage/route-c1a2c7e62ce669f7.js +0 -1
  592. package/.next-prod/static/chunks/app/api/global-state/route-c1a2c7e62ce669f7.js +0 -1
  593. package/.next-prod/static/chunks/app/api/health/route-c1a2c7e62ce669f7.js +0 -1
  594. package/.next-prod/static/chunks/app/api/html-apps/[id]/route-c1a2c7e62ce669f7.js +0 -1
  595. package/.next-prod/static/chunks/app/api/html-apps/route-c1a2c7e62ce669f7.js +0 -1
  596. package/.next-prod/static/chunks/app/api/jupyter/load/route-c1a2c7e62ce669f7.js +0 -1
  597. package/.next-prod/static/chunks/app/api/jupyter/save/route-c1a2c7e62ce669f7.js +0 -1
  598. package/.next-prod/static/chunks/app/api/jupyter/shutdown/route-c1a2c7e62ce669f7.js +0 -1
  599. package/.next-prod/static/chunks/app/api/kimi/credentials/route-c1a2c7e62ce669f7.js +0 -1
  600. package/.next-prod/static/chunks/app/api/kimi/models/route-c1a2c7e62ce669f7.js +0 -1
  601. package/.next-prod/static/chunks/app/api/kimi/usage/route-c1a2c7e62ce669f7.js +0 -1
  602. package/.next-prod/static/chunks/app/api/lsp/definition/route-c1a2c7e62ce669f7.js +0 -1
  603. package/.next-prod/static/chunks/app/api/lsp/hover/route-c1a2c7e62ce669f7.js +0 -1
  604. package/.next-prod/static/chunks/app/api/lsp/references/route-c1a2c7e62ce669f7.js +0 -1
  605. package/.next-prod/static/chunks/app/api/lsp/status/route-c1a2c7e62ce669f7.js +0 -1
  606. package/.next-prod/static/chunks/app/api/lsp/warmup/route-c1a2c7e62ce669f7.js +0 -1
  607. package/.next-prod/static/chunks/app/api/mysql/columns/route-c1a2c7e62ce669f7.js +0 -1
  608. package/.next-prod/static/chunks/app/api/mysql/connect/route-c1a2c7e62ce669f7.js +0 -1
  609. package/.next-prod/static/chunks/app/api/mysql/disconnect/route-c1a2c7e62ce669f7.js +0 -1
  610. package/.next-prod/static/chunks/app/api/mysql/export/route-c1a2c7e62ce669f7.js +0 -1
  611. package/.next-prod/static/chunks/app/api/mysql/query/route-c1a2c7e62ce669f7.js +0 -1
  612. package/.next-prod/static/chunks/app/api/mysql/schemas/route-c1a2c7e62ce669f7.js +0 -1
  613. package/.next-prod/static/chunks/app/api/neo4j/connect/route-c1a2c7e62ce669f7.js +0 -1
  614. package/.next-prod/static/chunks/app/api/neo4j/disconnect/route-c1a2c7e62ce669f7.js +0 -1
  615. package/.next-prod/static/chunks/app/api/neo4j/query/route-c1a2c7e62ce669f7.js +0 -1
  616. package/.next-prod/static/chunks/app/api/neo4j/schema/route-c1a2c7e62ce669f7.js +0 -1
  617. package/.next-prod/static/chunks/app/api/note/route-c1a2c7e62ce669f7.js +0 -1
  618. package/.next-prod/static/chunks/app/api/ollama/config/route-c1a2c7e62ce669f7.js +0 -1
  619. package/.next-prod/static/chunks/app/api/ollama/models/route-c1a2c7e62ce669f7.js +0 -1
  620. package/.next-prod/static/chunks/app/api/ollama/start/route-c1a2c7e62ce669f7.js +0 -1
  621. package/.next-prod/static/chunks/app/api/open-cursor/route-c1a2c7e62ce669f7.js +0 -1
  622. package/.next-prod/static/chunks/app/api/open-vscode/route-c1a2c7e62ce669f7.js +0 -1
  623. package/.next-prod/static/chunks/app/api/pick-folder/route-c1a2c7e62ce669f7.js +0 -1
  624. package/.next-prod/static/chunks/app/api/pinned-sessions/route-c1a2c7e62ce669f7.js +0 -1
  625. package/.next-prod/static/chunks/app/api/project-settings/route-c1a2c7e62ce669f7.js +0 -1
  626. package/.next-prod/static/chunks/app/api/project-state/route-c1a2c7e62ce669f7.js +0 -1
  627. package/.next-prod/static/chunks/app/api/projectGraph/affected/route-c1a2c7e62ce669f7.js +0 -1
  628. package/.next-prod/static/chunks/app/api/projectGraph/callees/route-c1a2c7e62ce669f7.js +0 -1
  629. package/.next-prod/static/chunks/app/api/projectGraph/callers/route-c1a2c7e62ce669f7.js +0 -1
  630. package/.next-prod/static/chunks/app/api/projectGraph/coedit/route-c1a2c7e62ce669f7.js +0 -1
  631. package/.next-prod/static/chunks/app/api/projectGraph/context/route-c1a2c7e62ce669f7.js +0 -1
  632. package/.next-prod/static/chunks/app/api/projectGraph/file/route-c1a2c7e62ce669f7.js +0 -1
  633. package/.next-prod/static/chunks/app/api/projectGraph/file-functions/route-c1a2c7e62ce669f7.js +0 -1
  634. package/.next-prod/static/chunks/app/api/projectGraph/impact/route-c1a2c7e62ce669f7.js +0 -1
  635. package/.next-prod/static/chunks/app/api/projectGraph/related/route-c1a2c7e62ce669f7.js +0 -1
  636. package/.next-prod/static/chunks/app/api/projectGraph/risk/route-c1a2c7e62ce669f7.js +0 -1
  637. package/.next-prod/static/chunks/app/api/projectGraph/search/route-c1a2c7e62ce669f7.js +0 -1
  638. package/.next-prod/static/chunks/app/api/projects/route-c1a2c7e62ce669f7.js +0 -1
  639. package/.next-prod/static/chunks/app/api/prompts/config/route-c1a2c7e62ce669f7.js +0 -1
  640. package/.next-prod/static/chunks/app/api/push/public-key/route-c1a2c7e62ce669f7.js +0 -1
  641. package/.next-prod/static/chunks/app/api/push/subscribe/route-c1a2c7e62ce669f7.js +0 -1
  642. package/.next-prod/static/chunks/app/api/push/unsubscribe/route-c1a2c7e62ce669f7.js +0 -1
  643. package/.next-prod/static/chunks/app/api/redis/command/route-c1a2c7e62ce669f7.js +0 -1
  644. package/.next-prod/static/chunks/app/api/redis/connect/route-c1a2c7e62ce669f7.js +0 -1
  645. package/.next-prod/static/chunks/app/api/redis/delete/route-c1a2c7e62ce669f7.js +0 -1
  646. package/.next-prod/static/chunks/app/api/redis/disconnect/route-c1a2c7e62ce669f7.js +0 -1
  647. package/.next-prod/static/chunks/app/api/redis/get/route-c1a2c7e62ce669f7.js +0 -1
  648. package/.next-prod/static/chunks/app/api/redis/keys/route-c1a2c7e62ce669f7.js +0 -1
  649. package/.next-prod/static/chunks/app/api/redis/set/route-c1a2c7e62ce669f7.js +0 -1
  650. package/.next-prod/static/chunks/app/api/restart/route-c1a2c7e62ce669f7.js +0 -1
  651. package/.next-prod/static/chunks/app/api/review/[id]/comments/route-c1a2c7e62ce669f7.js +0 -1
  652. package/.next-prod/static/chunks/app/api/review/[id]/replies/route-c1a2c7e62ce669f7.js +0 -1
  653. package/.next-prod/static/chunks/app/api/review/[id]/route-c1a2c7e62ce669f7.js +0 -1
  654. package/.next-prod/static/chunks/app/api/review/identify/route-c1a2c7e62ce669f7.js +0 -1
  655. package/.next-prod/static/chunks/app/api/review/order/route-c1a2c7e62ce669f7.js +0 -1
  656. package/.next-prod/static/chunks/app/api/review/route-c1a2c7e62ce669f7.js +0 -1
  657. package/.next-prod/static/chunks/app/api/review/share-info/route-c1a2c7e62ce669f7.js +0 -1
  658. package/.next-prod/static/chunks/app/api/review/users/route-c1a2c7e62ce669f7.js +0 -1
  659. package/.next-prod/static/chunks/app/api/scheduled-tasks/route-c1a2c7e62ce669f7.js +0 -1
  660. package/.next-prod/static/chunks/app/api/services/config/route-c1a2c7e62ce669f7.js +0 -1
  661. package/.next-prod/static/chunks/app/api/services/scripts/route-c1a2c7e62ce669f7.js +0 -1
  662. package/.next-prod/static/chunks/app/api/session/[sessionId]/fork/route-c1a2c7e62ce669f7.js +0 -1
  663. package/.next-prod/static/chunks/app/api/session/[sessionId]/history/route-c1a2c7e62ce669f7.js +0 -1
  664. package/.next-prod/static/chunks/app/api/session-by-path/route-c1a2c7e62ce669f7.js +0 -1
  665. package/.next-prod/static/chunks/app/api/sessions/projects/[encodedPath]/route-c1a2c7e62ce669f7.js +0 -1
  666. package/.next-prod/static/chunks/app/api/sessions/projects/route-c1a2c7e62ce669f7.js +0 -1
  667. package/.next-prod/static/chunks/app/api/sessions/route-c1a2c7e62ce669f7.js +0 -1
  668. package/.next-prod/static/chunks/app/api/settings/route-c1a2c7e62ce669f7.js +0 -1
  669. package/.next-prod/static/chunks/app/api/shutdown/route-c1a2c7e62ce669f7.js +0 -1
  670. package/.next-prod/static/chunks/app/api/skills/[id]/route-c1a2c7e62ce669f7.js +0 -1
  671. package/.next-prod/static/chunks/app/api/skills/content/route-c1a2c7e62ce669f7.js +0 -1
  672. package/.next-prod/static/chunks/app/api/skills/route-c1a2c7e62ce669f7.js +0 -1
  673. package/.next-prod/static/chunks/app/api/snapshots/diff/route-c1a2c7e62ce669f7.js +0 -1
  674. package/.next-prod/static/chunks/app/api/snapshots/route-c1a2c7e62ce669f7.js +0 -1
  675. package/.next-prod/static/chunks/app/api/terminal/aliases/route-c1a2c7e62ce669f7.js +0 -1
  676. package/.next-prod/static/chunks/app/api/terminal/autocomplete/route-c1a2c7e62ce669f7.js +0 -1
  677. package/.next-prod/static/chunks/app/api/terminal/bubble-order/route-c1a2c7e62ce669f7.js +0 -1
  678. package/.next-prod/static/chunks/app/api/terminal/env/route-c1a2c7e62ce669f7.js +0 -1
  679. package/.next-prod/static/chunks/app/api/terminal/history/route-c1a2c7e62ce669f7.js +0 -1
  680. package/.next-prod/static/chunks/app/api/update/route-c1a2c7e62ce669f7.js +0 -1
  681. package/.next-prod/static/chunks/app/api/update-state/route-c1a2c7e62ce669f7.js +0 -1
  682. package/.next-prod/static/chunks/app/api/version/route-c1a2c7e62ce669f7.js +0 -1
  683. package/.next-prod/static/chunks/app/apps/[...path]/route-c1a2c7e62ce669f7.js +0 -1
  684. package/.next-prod/static/chunks/app/m/page-25cd9633a00ed40d.js +0 -1
  685. package/.next-prod/static/chunks/app/manifest.webmanifest/route-c1a2c7e62ce669f7.js +0 -1
  686. package/.next-prod/static/chunks/app/page-8b3591aba80eac74.js +0 -1
  687. package/.next-prod/static/chunks/app/project/page-8b3591aba80eac74.js +0 -1
  688. package/.next-prod/static/chunks/next/dist/client/components/builtin/app-error-c1a2c7e62ce669f7.js +0 -1
  689. package/.next-prod/static/chunks/next/dist/client/components/builtin/forbidden-c1a2c7e62ce669f7.js +0 -1
  690. package/.next-prod/static/chunks/next/dist/client/components/builtin/not-found-c1a2c7e62ce669f7.js +0 -1
  691. package/.next-prod/static/chunks/next/dist/client/components/builtin/unauthorized-c1a2c7e62ce669f7.js +0 -1
  692. package/.next-prod/static/css/50c1581bbbec6990.css +0 -1
  693. package/.next-prod/static/kwmbFJqrsOBSPJpMWySD2/_buildManifest.js +0 -1
  694. package/scripts/claudeBinary.mjs +0 -38
  695. /package/.next-prod/static/{kwmbFJqrsOBSPJpMWySD2 → U8R610UNAk7MWsuSmrm28}/_ssgManifest.js +0 -0
package/dist/httpApi.mjs CHANGED
@@ -22,10 +22,10 @@ import {
22
22
  unregisterBrowser,
23
23
  unregisterTerminal,
24
24
  writeStdinToCommand
25
- } from "./chunk-H6AI4XJC.mjs";
25
+ } from "./chunk-SGUW2QJI.mjs";
26
26
  import {
27
27
  getTerminalHistoryPath
28
- } from "./chunk-ZE2JXL6E.mjs";
28
+ } from "./chunk-ETYX2YQF.mjs";
29
29
  import "./chunk-7P6ASYW6.mjs";
30
30
 
31
31
  // src/lib/httpApi.ts
@@ -14,7 +14,7 @@ import {
14
14
  stashCodexRollout,
15
15
  stashTranscript,
16
16
  updateGlobalState
17
- } from "./chunk-FBAFMLUC.mjs";
17
+ } from "./chunk-SAKRITIQ.mjs";
18
18
  import {
19
19
  AgentError,
20
20
  AppRuntime,
@@ -45,7 +45,7 @@ import {
45
45
  settlePendingRecord,
46
46
  withFileLock,
47
47
  writeJsonFile
48
- } from "./chunk-ZE2JXL6E.mjs";
48
+ } from "./chunk-ETYX2YQF.mjs";
49
49
  import {
50
50
  __export
51
51
  } from "./chunk-7P6ASYW6.mjs";
@@ -123,13 +123,13 @@ var forkSnapshot = (effect) => {
123
123
  )
124
124
  );
125
125
  };
126
- function snapshotOnRunStart(cwd, sessionKey, provider) {
126
+ function snapshotOnRunStart(cwd, sessionKey, provider, runId) {
127
127
  if (!cwd) return;
128
128
  forkSnapshot(
129
- Effect_exports.flatMap(SnapshotService, (svc) => svc.baseline(cwd, sessionKey, provider))
129
+ Effect_exports.flatMap(SnapshotService, (svc) => svc.baseline(cwd, sessionKey, provider, runId))
130
130
  );
131
131
  }
132
- function snapshotOnRunEvent(cwd, sessionKey, provider, event) {
132
+ function snapshotOnRunEvent(cwd, sessionKey, provider, event, runId) {
133
133
  if (!cwd) return;
134
134
  if (event.type === "assistant") {
135
135
  for (const b of contentBlocks(event)) {
@@ -159,6 +159,7 @@ function snapshotOnRunEvent(cwd, sessionKey, provider, event) {
159
159
  (svc) => svc.record({
160
160
  cwd,
161
161
  sessionKey,
162
+ runId,
162
163
  provider,
163
164
  toolId,
164
165
  toolName: meta3?.name ?? "tool",
@@ -2490,7 +2491,7 @@ async function dispatchChat(spec, body, request) {
2490
2491
  updateGlobalState(cwd, sessionId, "loading", void 0, promptText).catch(() => {
2491
2492
  });
2492
2493
  }
2493
- snapshotOnRunStart(cwd || "", currentKey, spec.name);
2494
+ snapshotOnRunStart(cwd || "", currentKey, spec.name, runId);
2494
2495
  const ctx = {
2495
2496
  prompt: promptText,
2496
2497
  images,
@@ -2501,7 +2502,7 @@ async function dispatchChat(spec, body, request) {
2501
2502
  emit(event) {
2502
2503
  if (isClosed) return;
2503
2504
  appendRun(currentKey, event);
2504
- snapshotOnRunEvent(cwd || "", currentKey, spec.name, event);
2505
+ snapshotOnRunEvent(cwd || "", currentKey, spec.name, event, runId);
2505
2506
  },
2506
2507
  rekey(realSessionId) {
2507
2508
  if (!realSessionId) return;
@@ -2551,6 +2552,17 @@ async function dispatchChat(spec, body, request) {
2551
2552
  // packages/feature/agent/src/server/engines/shared/sdkLoop.ts
2552
2553
  import { query } from "@anthropic-ai/claude-agent-sdk";
2553
2554
  var MAX_COMPACTION_RETRIES = 1;
2555
+ var STDERR_LOG_BUDGET_BYTES = 1e4;
2556
+ function makeStderrForwarder() {
2557
+ let spent = 0;
2558
+ return (data) => {
2559
+ if (spent > STDERR_LOG_BUDGET_BYTES) return;
2560
+ spent += data.length;
2561
+ const text = data.trimEnd();
2562
+ if (text) console.error(`[claude:stderr] ${text}`);
2563
+ if (spent > STDERR_LOG_BUDGET_BYTES) console.error("[claude:stderr] \u2026 further output suppressed");
2564
+ };
2565
+ }
2554
2566
  function follow(ctx) {
2555
2567
  const ac = new AbortController();
2556
2568
  if (ctx.signal.aborted) ac.abort();
@@ -2599,7 +2611,8 @@ async function runSdkLoop(ctx, buildOptions) {
2599
2611
  })();
2600
2612
  const attemptAbort = follow(ctx);
2601
2613
  const resume = isRetry ? ctx.currentKey() : ctx.sessionId;
2602
- const options = isRetry ? { ...buildOptions(attemptAbort, resume, true), resume } : buildOptions(attemptAbort, ctx.sessionId, false);
2614
+ const built = isRetry ? { ...buildOptions(attemptAbort, resume, true), resume } : buildOptions(attemptAbort, ctx.sessionId, false);
2615
+ const options = { ...built, stderr: makeStderrForwarder() };
2603
2616
  const response = query({ prompt: input, options });
2604
2617
  let receivedResult = false;
2605
2618
  for await (const message of response) {
@@ -17583,33 +17596,138 @@ function extractPatchLiteral(script) {
17583
17596
  }
17584
17597
  return null;
17585
17598
  }
17586
- function extractExecArgs(script) {
17587
- const call = script.indexOf("tools.exec_command(");
17588
- if (call === -1) return null;
17589
- const open = script.indexOf("{", call);
17590
- if (open === -1) return null;
17591
- let depth = 0;
17592
- let quote = "";
17593
- for (let i = open; i < script.length; i++) {
17594
- const ch = script[i];
17595
- if (quote) {
17596
- if (ch === "\\") i++;
17597
- else if (ch === quote) quote = "";
17599
+ var JS_IDENT_RE = /^[A-Za-z_$][A-Za-z0-9_$]*/;
17600
+ var JS_SCALAR_RE = /^(-?\d[\d_]*(?:\.\d*)?(?:[eE][+-]?\d+)?|true|false|null|undefined)/;
17601
+ var skipJsWs = (c) => {
17602
+ while (c.i < c.s.length && /\s/.test(c.s[c.i])) c.i++;
17603
+ };
17604
+ function readJsString(c) {
17605
+ const q = c.s[c.i];
17606
+ if (q !== '"' && q !== "'" && q !== "`") return null;
17607
+ const start = c.i;
17608
+ c.i++;
17609
+ while (c.i < c.s.length) {
17610
+ const ch = c.s[c.i];
17611
+ if (ch === "\\") {
17612
+ c.i += 2;
17598
17613
  continue;
17599
17614
  }
17615
+ if (ch === q) {
17616
+ c.i++;
17617
+ return decodeJsStringLiteral(c.s.slice(start, c.i));
17618
+ }
17619
+ c.i++;
17620
+ }
17621
+ return null;
17622
+ }
17623
+ function readJsValue(c) {
17624
+ skipJsWs(c);
17625
+ const ch = c.s[c.i];
17626
+ if (ch === void 0) return null;
17627
+ if (ch === '"' || ch === "'" || ch === "`") {
17628
+ const str = readJsString(c);
17629
+ return str === null ? null : { v: str };
17630
+ }
17631
+ if (ch === "{") return readJsObject(c);
17632
+ if (ch === "[") return readJsArray(c);
17633
+ const m = JS_SCALAR_RE.exec(c.s.slice(c.i));
17634
+ if (!m) return null;
17635
+ c.i += m[0].length;
17636
+ const raw = m[0];
17637
+ if (raw === "true") return { v: true };
17638
+ if (raw === "false") return { v: false };
17639
+ if (raw === "null" || raw === "undefined") return { v: null };
17640
+ const n = Number(raw.replace(/_/g, ""));
17641
+ return Number.isNaN(n) ? null : { v: n };
17642
+ }
17643
+ function readJsArray(c) {
17644
+ if (c.s[c.i] !== "[") return null;
17645
+ c.i++;
17646
+ const out = [];
17647
+ for (; ; ) {
17648
+ skipJsWs(c);
17649
+ if (c.s[c.i] === "]") {
17650
+ c.i++;
17651
+ return { v: out };
17652
+ }
17653
+ if (c.i >= c.s.length) return null;
17654
+ const item = readJsValue(c);
17655
+ if (!item) return null;
17656
+ out.push(item.v);
17657
+ skipJsWs(c);
17658
+ if (c.s[c.i] === ",") {
17659
+ c.i++;
17660
+ continue;
17661
+ }
17662
+ if (c.s[c.i] === "]") {
17663
+ c.i++;
17664
+ return { v: out };
17665
+ }
17666
+ return null;
17667
+ }
17668
+ }
17669
+ function readJsObject(c) {
17670
+ if (c.s[c.i] !== "{") return null;
17671
+ c.i++;
17672
+ const out = {};
17673
+ for (; ; ) {
17674
+ skipJsWs(c);
17675
+ if (c.s[c.i] === "}") {
17676
+ c.i++;
17677
+ return { v: out };
17678
+ }
17679
+ if (c.i >= c.s.length) return null;
17680
+ let key = null;
17681
+ const ch = c.s[c.i];
17600
17682
  if (ch === '"' || ch === "'" || ch === "`") {
17601
- quote = ch;
17683
+ key = readJsString(c);
17684
+ } else {
17685
+ const m = JS_IDENT_RE.exec(c.s.slice(c.i));
17686
+ if (m) {
17687
+ key = m[0];
17688
+ c.i += m[0].length;
17689
+ }
17690
+ }
17691
+ if (key === null) return null;
17692
+ skipJsWs(c);
17693
+ if (c.s[c.i] !== ":") return null;
17694
+ c.i++;
17695
+ const val = readJsValue(c);
17696
+ if (!val) return null;
17697
+ out[key] = val.v;
17698
+ skipJsWs(c);
17699
+ if (c.s[c.i] === ",") {
17700
+ c.i++;
17602
17701
  continue;
17603
17702
  }
17604
- if (ch === "{") depth++;
17605
- else if (ch === "}" && --depth === 0) {
17606
- try {
17607
- const parsed = JSON.parse(script.slice(open, i + 1));
17608
- return parsed && typeof parsed === "object" ? parsed : null;
17609
- } catch {
17610
- return null;
17611
- }
17703
+ if (c.s[c.i] === "}") {
17704
+ c.i++;
17705
+ return { v: out };
17612
17706
  }
17707
+ return null;
17708
+ }
17709
+ }
17710
+ function readToolArgsAt(script, from) {
17711
+ const open = script.indexOf("{", from);
17712
+ if (open === -1) return null;
17713
+ const read = readJsObject({ s: script, i: open });
17714
+ if (!read || !read.v || typeof read.v !== "object") return null;
17715
+ return read.v;
17716
+ }
17717
+ function extractExecArgs(script) {
17718
+ const call = script.indexOf("tools.exec_command(");
17719
+ if (call === -1) return null;
17720
+ return readToolArgsAt(script, call);
17721
+ }
17722
+ var TOOL_CALL_RE = /tools\.([A-Za-z_$][A-Za-z0-9_$]*)\s*\(/g;
17723
+ function extractOtherToolCall(script) {
17724
+ TOOL_CALL_RE.lastIndex = 0;
17725
+ let m;
17726
+ while (m = TOOL_CALL_RE.exec(script)) {
17727
+ const tool2 = m[1];
17728
+ if (tool2 === "exec_command" || tool2 === "apply_patch") continue;
17729
+ const args = readToolArgsAt(script, m.index);
17730
+ if (args) return { tool: tool2, args };
17613
17731
  }
17614
17732
  return null;
17615
17733
  }
@@ -17620,6 +17738,8 @@ function parseCodexExecScript(script) {
17620
17738
  if (args) {
17621
17739
  return { kind: "exec", command: typeof args.cmd === "string" ? args.cmd : "", args };
17622
17740
  }
17741
+ const other = extractOtherToolCall(script);
17742
+ if (other) return { kind: "other", tool: other.tool, args: other.args };
17623
17743
  return { kind: "unknown" };
17624
17744
  }
17625
17745
  var CODEX_AGENT_DONE = /* @__PURE__ */ new Set(["completed", "errored", "interrupted", "not_found", "failed"]);
@@ -18308,6 +18428,9 @@ async function runCodexSdk(ctx) {
18308
18428
  } catch (error48) {
18309
18429
  const message = error48 instanceof Error ? error48.message : "";
18310
18430
  if (!message.includes("Unable to locate Codex CLI binaries")) throw error48;
18431
+ console.error(
18432
+ "[codex] bundled CLI binary is missing \u2014 falling back to `codex` on PATH. That build is not the version this SDK was pinned against. Repair with: cockpit update"
18433
+ );
18311
18434
  codex = new Codex({ codexPathOverride: "codex", env });
18312
18435
  }
18313
18436
  const thread = ctx.sessionId ? codex.resumeThread(ctx.sessionId, codexThreadOptions(ctx)) : codex.startThread(codexThreadOptions(ctx));
@@ -18508,7 +18631,7 @@ var en_default2 = {
18508
18631
  copiedAllQA: "All Q&A copied",
18509
18632
  sentQA: "Sent to AI",
18510
18633
  readFileFailed: "Failed to read file",
18511
- fileOutsideProject: "File is outside this project \u2014 only Markdown and images can be previewed",
18634
+ fileOutsideProject: "File is outside this project \u2014 only Markdown, CSV and images can be previewed",
18512
18635
  reviewCreated: "Review created, link copied",
18513
18636
  reviewUpdated: "Review updated, link copied",
18514
18637
  reviewCreateFailed: "Failed to create review",
@@ -18588,15 +18711,16 @@ var en_default2 = {
18588
18711
  },
18589
18712
  sessions: {
18590
18713
  recentSessions: "Recent Sessions",
18714
+ favorites: "Favorite Sessions",
18715
+ noFavorites: "No favorite sessions yet. Click the star in the tab bar to add.",
18716
+ addFavorite: "Add to favorites",
18717
+ removeFavorite: "Remove from favorites",
18591
18718
  runningCount: "{{count}} running",
18592
18719
  unreadCount: "{{count}} unread",
18593
18720
  noSessions: "No sessions yet",
18594
18721
  running: "Running",
18595
18722
  done: "Done",
18596
- pinnedSessions: "Pinned Sessions",
18597
- noPinnedSessions: "No pinned sessions. Click the pin icon in the tab bar to add.",
18598
18723
  editTitle: "Edit title",
18599
- remove: "Remove",
18600
18724
  projectSessions: "Project Sessions",
18601
18725
  browseAllSessions: "Browse all sessions",
18602
18726
  sessionList: "Session List",
@@ -18631,6 +18755,11 @@ var en_default2 = {
18631
18755
  resume: "Resume",
18632
18756
  pause: "Pause",
18633
18757
  completedCount: "Completed ({{count}})",
18758
+ groupPendingReview: "Finished \xB7 to review",
18759
+ groupUpcoming: "Running \xB7 upcoming",
18760
+ openSession: "Open session",
18761
+ selectTaskHint: "Select a task on the left to preview its session messages",
18762
+ noTaskMessages: "No messages in this task's session yet",
18634
18763
  success: "Success",
18635
18764
  failure: "Failed",
18636
18765
  createTask: "Create Scheduled Task",
@@ -18801,6 +18930,8 @@ var en_default2 = {
18801
18930
  toggleJsonReadable: "Toggle JSON readable mode",
18802
18931
  previewMarkdown: "Preview Markdown",
18803
18932
  exitPreview: "Exit Preview",
18933
+ collapseAllJson: "Fold",
18934
+ expandAllJson: "Full",
18804
18935
  viewBlame: "View line-by-line change history",
18805
18936
  viewDiff: "View changes against HEAD",
18806
18937
  exitDiff: "Exit Diff",
@@ -18823,6 +18954,20 @@ var en_default2 = {
18823
18954
  enterKeywordToSearch: "Enter keyword to search file contents",
18824
18955
  searchMinChars: "Search requires at least 2 characters"
18825
18956
  },
18957
+ csv: {
18958
+ table: "Table",
18959
+ raw: "Raw",
18960
+ empty: "Empty table",
18961
+ summary: "{{rows}} rows \xB7 {{cols}} columns",
18962
+ summaryFiltered: "{{rows}} / {{total}} rows matched \xB7 {{cols}} columns",
18963
+ loadMore: "Load more ({{shown}} / {{total}} shown)",
18964
+ filterPlaceholder: "Filter rows\u2026",
18965
+ filterColumn: "Filter column",
18966
+ clearFilter: "Clear filter",
18967
+ allColumns: "All columns",
18968
+ noMatch: "No matching rows",
18969
+ sortHint: "Click to sort (asc / desc / off)"
18970
+ },
18826
18971
  codeViewer: {
18827
18972
  fileModifiedExternally: "File was modified externally. Saving will overwrite external changes.",
18828
18973
  useDiskVersion: "Use disk version",
@@ -18848,6 +18993,8 @@ var en_default2 = {
18848
18993
  scrollUpForMore: "\u2191 Scroll up to load more history",
18849
18994
  jumpToStart: "Jump to start",
18850
18995
  jumpToLatest: "Jump to latest",
18996
+ jumpToPrevUserMessage: "Previous user message",
18997
+ jumpToNextUserMessage: "Next user message",
18851
18998
  copyMessage: "Copy message",
18852
18999
  copyImage: "Copy image",
18853
19000
  copiedImage: "Image copied",
@@ -19193,7 +19340,8 @@ var en_default2 = {
19193
19340
  language: "Language",
19194
19341
  languageAuto: "System",
19195
19342
  switchDark: "Switch to dark",
19196
- switchLight: "Switch to light"
19343
+ switchLight: "Switch to light",
19344
+ agentsBundled: "bundled"
19197
19345
  },
19198
19346
  editor: {
19199
19347
  placeholder: "Write something... Type / for commands",
@@ -19474,8 +19622,6 @@ var en_default2 = {
19474
19622
  notSelected: "(not selected)"
19475
19623
  },
19476
19624
  tabBar: {
19477
- unpin: "Unpin",
19478
- pin: "Pin to favorites",
19479
19625
  closeTab: "Close tab",
19480
19626
  closeAll: "Close all tabs",
19481
19627
  newTab: "New tab"
@@ -19749,7 +19895,7 @@ var zh_default = {
19749
19895
  copiedAllQA: "\u5DF2\u590D\u5236\u6240\u6709\u95EE\u7B54",
19750
19896
  sentQA: "\u5DF2\u53D1\u9001\u7ED9 AI",
19751
19897
  readFileFailed: "\u8BFB\u53D6\u6587\u4EF6\u5931\u8D25",
19752
- fileOutsideProject: "\u6587\u4EF6\u5728\u5F53\u524D\u9879\u76EE\u4E4B\u5916\uFF0C\u4EC5\u652F\u6301\u9884\u89C8 Markdown \u548C\u56FE\u7247",
19898
+ fileOutsideProject: "\u6587\u4EF6\u5728\u5F53\u524D\u9879\u76EE\u4E4B\u5916\uFF0C\u4EC5\u652F\u6301\u9884\u89C8 Markdown\u3001CSV \u548C\u56FE\u7247",
19753
19899
  reviewCreated: "\u8BC4\u5BA1\u5DF2\u521B\u5EFA\uFF0C\u94FE\u63A5\u5DF2\u590D\u5236",
19754
19900
  reviewUpdated: "\u8BC4\u5BA1\u5DF2\u66F4\u65B0\uFF0C\u94FE\u63A5\u5DF2\u590D\u5236",
19755
19901
  reviewCreateFailed: "\u521B\u5EFA\u8BC4\u5BA1\u5931\u8D25",
@@ -19829,15 +19975,16 @@ var zh_default = {
19829
19975
  },
19830
19976
  sessions: {
19831
19977
  recentSessions: "\u6700\u8FD1\u4F1A\u8BDD",
19978
+ favorites: "\u6536\u85CF\u4F1A\u8BDD",
19979
+ noFavorites: "\u6682\u65E0\u6536\u85CF\u4F1A\u8BDD\uFF0C\u5728 Tab \u680F\u70B9\u51FB\u661F\u6807\u53EF\u6DFB\u52A0",
19980
+ addFavorite: "\u6536\u85CF\u6B64\u4F1A\u8BDD",
19981
+ removeFavorite: "\u53D6\u6D88\u6536\u85CF",
19832
19982
  runningCount: "{{count}} \u8FD0\u884C\u4E2D",
19833
19983
  unreadCount: "{{count}} \u672A\u8BFB",
19834
19984
  noSessions: "\u6682\u65E0\u4F1A\u8BDD\u8BB0\u5F55",
19835
19985
  running: "\u8FD0\u884C\u4E2D",
19836
19986
  done: "\u5B8C\u6210",
19837
- pinnedSessions: "\u5E38\u7528\u4F1A\u8BDD",
19838
- noPinnedSessions: "\u6682\u65E0\u5E38\u7528\u4F1A\u8BDD\uFF0C\u5728 Tab \u680F\u70B9\u51FB\u56FE\u9489\u53EF\u6DFB\u52A0",
19839
19987
  editTitle: "\u7F16\u8F91\u6807\u9898",
19840
- remove: "\u79FB\u9664",
19841
19988
  projectSessions: "\u9879\u76EE\u4F1A\u8BDD",
19842
19989
  browseAllSessions: "\u6D4F\u89C8\u6240\u6709\u4F1A\u8BDD",
19843
19990
  sessionList: "\u4F1A\u8BDD\u5217\u8868",
@@ -19872,6 +20019,11 @@ var zh_default = {
19872
20019
  resume: "\u6062\u590D",
19873
20020
  pause: "\u6682\u505C",
19874
20021
  completedCount: "\u5DF2\u5B8C\u6210 ({{count}})",
20022
+ groupPendingReview: "\u8FD0\u884C\u5B8C\u6210\u5F85\u67E5\u770B",
20023
+ groupUpcoming: "\u8FD0\u884C\u4E2D \xB7 \u5F85\u8FD0\u884C",
20024
+ openSession: "\u6253\u5F00\u4F1A\u8BDD",
20025
+ selectTaskHint: "\u9009\u62E9\u5DE6\u4FA7\u4EFB\u52A1\uFF0C\u67E5\u770B\u5B83\u7684\u4F1A\u8BDD\u6D88\u606F",
20026
+ noTaskMessages: "\u8BE5\u4EFB\u52A1\u7684\u4F1A\u8BDD\u6682\u65E0\u6D88\u606F",
19875
20027
  success: "\u6210\u529F",
19876
20028
  failure: "\u5931\u8D25",
19877
20029
  createTask: "\u521B\u5EFA\u5B9A\u65F6\u4EFB\u52A1",
@@ -20042,6 +20194,8 @@ var zh_default = {
20042
20194
  toggleJsonReadable: "\u5207\u6362 JSON \u53EF\u8BFB\u6A21\u5F0F",
20043
20195
  previewMarkdown: "\u9884\u89C8 Markdown \u6E32\u67D3\u6548\u679C",
20044
20196
  exitPreview: "\u9000\u51FA\u9884\u89C8",
20197
+ collapseAllJson: "\u6298\u53E0",
20198
+ expandAllJson: "\u5C55\u5F00",
20045
20199
  viewBlame: "\u67E5\u770B\u6BCF\u884C\u4EE3\u7801\u7684\u4FEE\u6539\u8BB0\u5F55",
20046
20200
  viewDiff: "\u67E5\u770B\u76F8\u5BF9 HEAD \u7684\u6539\u52A8",
20047
20201
  exitDiff: "\u9000\u51FA Diff",
@@ -20064,6 +20218,20 @@ var zh_default = {
20064
20218
  enterKeywordToSearch: "\u8F93\u5165\u5173\u952E\u8BCD\u641C\u7D22\u6587\u4EF6\u5185\u5BB9",
20065
20219
  searchMinChars: "\u641C\u7D22\u5185\u5BB9\u81F3\u5C11\u9700\u8981 2 \u4E2A\u5B57\u7B26"
20066
20220
  },
20221
+ csv: {
20222
+ table: "\u8868\u683C",
20223
+ raw: "\u539F\u59CB\u5185\u5BB9",
20224
+ empty: "\u7A7A\u8868\u683C",
20225
+ summary: "{{rows}} \u884C \xB7 {{cols}} \u5217",
20226
+ summaryFiltered: "\u5339\u914D {{rows}} / {{total}} \u884C \xB7 {{cols}} \u5217",
20227
+ loadMore: "\u52A0\u8F7D\u66F4\u591A\uFF08\u5DF2\u663E\u793A {{shown}} / {{total}}\uFF09",
20228
+ filterPlaceholder: "\u7B5B\u9009\u5185\u5BB9\u2026",
20229
+ filterColumn: "\u7B5B\u9009\u5217",
20230
+ clearFilter: "\u6E05\u9664\u7B5B\u9009",
20231
+ allColumns: "\u5168\u90E8\u5217",
20232
+ noMatch: "\u6CA1\u6709\u5339\u914D\u7684\u884C",
20233
+ sortHint: "\u70B9\u51FB\u6392\u5E8F\uFF08\u5347\u5E8F / \u964D\u5E8F / \u53D6\u6D88\uFF09"
20234
+ },
20067
20235
  codeViewer: {
20068
20236
  fileModifiedExternally: "\u6587\u4EF6\u5DF2\u88AB\u5916\u90E8\u4FEE\u6539\uFF0C\u4FDD\u5B58\u5C06\u8986\u76D6\u5916\u90E8\u66F4\u6539",
20069
20237
  useDiskVersion: "\u4F7F\u7528\u78C1\u76D8\u7248\u672C",
@@ -20089,6 +20257,8 @@ var zh_default = {
20089
20257
  scrollUpForMore: "\u2191 \u5411\u4E0A\u6EDA\u52A8\u52A0\u8F7D\u66F4\u591A\u5386\u53F2",
20090
20258
  jumpToStart: "\u8DF3\u8F6C\u5230\u5F00\u59CB",
20091
20259
  jumpToLatest: "\u8DF3\u8F6C\u5230\u6700\u65B0",
20260
+ jumpToPrevUserMessage: "\u4E0A\u4E00\u6761\u7528\u6237\u6D88\u606F",
20261
+ jumpToNextUserMessage: "\u4E0B\u4E00\u6761\u7528\u6237\u6D88\u606F",
20092
20262
  copyMessage: "\u590D\u5236\u6D88\u606F",
20093
20263
  copyImage: "\u590D\u5236\u56FE\u7247",
20094
20264
  copiedImage: "\u5DF2\u590D\u5236\u56FE\u7247",
@@ -20434,7 +20604,8 @@ var zh_default = {
20434
20604
  language: "\u8BED\u8A00",
20435
20605
  languageAuto: "\u8DDF\u968F\u7CFB\u7EDF",
20436
20606
  switchDark: "\u5207\u6362\u6697\u8272",
20437
- switchLight: "\u5207\u6362\u4EAE\u8272"
20607
+ switchLight: "\u5207\u6362\u4EAE\u8272",
20608
+ agentsBundled: "\u5185\u7F6E"
20438
20609
  },
20439
20610
  editor: {
20440
20611
  placeholder: "\u5199\u70B9\u4EC0\u4E48... \u8F93\u5165 / \u6253\u5F00\u5FEB\u6377\u547D\u4EE4",
@@ -20715,8 +20886,6 @@ var zh_default = {
20715
20886
  notSelected: "(\u672A\u9009\u62E9)"
20716
20887
  },
20717
20888
  tabBar: {
20718
- unpin: "\u53D6\u6D88\u56FA\u5B9A",
20719
- pin: "\u56FA\u5B9A\u5230\u5E38\u7528\u4F1A\u8BDD",
20720
20889
  closeTab: "\u5173\u95ED\u6807\u7B7E",
20721
20890
  closeAll: "\u5173\u95ED\u6240\u6709\u6807\u7B7E",
20722
20891
  newTab: "\u65B0\u5EFA\u6807\u7B7E"
@@ -46,12 +46,12 @@ import {
46
46
  unregisterTerminal,
47
47
  updateBrowserWs,
48
48
  writeStdinToCommand
49
- } from "./chunk-H6AI4XJC.mjs";
49
+ } from "./chunk-SGUW2QJI.mjs";
50
50
  import {
51
51
  createNeo4jDriver,
52
52
  runCypherWithDriver,
53
53
  serializeValue
54
- } from "./chunk-ZE2JXL6E.mjs";
54
+ } from "./chunk-ETYX2YQF.mjs";
55
55
  import "./chunk-7P6ASYW6.mjs";
56
56
  export {
57
57
  INTERRUPTED_EXIT_CODE,
package/dist/wsServer.mjs CHANGED
@@ -4,7 +4,7 @@ import {
4
4
  getRunSnapshot,
5
5
  recoverStashedCodexRollouts,
6
6
  recoverStashedTranscripts
7
- } from "./chunk-FBAFMLUC.mjs";
7
+ } from "./chunk-SAKRITIQ.mjs";
8
8
  import {
9
9
  addExitListener,
10
10
  addOutputListener,
@@ -20,7 +20,7 @@ import {
20
20
  resolvePendingRequest,
21
21
  unregisterBrowser,
22
22
  writeStdinToCommand
23
- } from "./chunk-H6AI4XJC.mjs";
23
+ } from "./chunk-SGUW2QJI.mjs";
24
24
  import {
25
25
  AppError,
26
26
  Effect_exports,
@@ -36,7 +36,7 @@ import {
36
36
  ValidationError,
37
37
  WSError,
38
38
  sanitizedSpawnEnv
39
- } from "./chunk-ZE2JXL6E.mjs";
39
+ } from "./chunk-ETYX2YQF.mjs";
40
40
  import "./chunk-7P6ASYW6.mjs";
41
41
 
42
42
  // src/lib/wsServer.ts
@@ -717,7 +717,7 @@ var handleJupyter = (conn, bubbleId, cwd) => Effect_exports.gen(function* () {
717
717
  Effect_exports.annotateLogs("cwd", cwd)
718
718
  );
719
719
  const { kernelManager } = yield* Effect_exports.tryPromise({
720
- try: () => import("./server-HRP33LCV.mjs"),
720
+ try: () => import("./server-C6LPAKPM.mjs"),
721
721
  catch: (cause) => new AppError({
722
722
  message: "failed to import kernel manager",
723
723
  cause
@@ -1123,12 +1123,22 @@ var dispatchMessage = (msg, projectCwd, registry, send) => Effect_exports.sync((
1123
1123
  return;
1124
1124
  }
1125
1125
  const childEnv = {
1126
+ // The server's own PATH — i.e. the one the user's interactive shell
1127
+ // exported when they launched cockpit. It must be set HERE, not only on
1128
+ // the pty branch: childEnv is rebuilt from scratch, and `zsh --login -c`
1129
+ // is NON-interactive, so it never sources ~/.zshrc. Without this, a pipe
1130
+ // command only sees the system PATH that /etc/zprofile's path_helper
1131
+ // builds, and every tool installed via an rc-file PATH edit (Android
1132
+ // platform-tools, ~/.local/bin, ~/.cargo/bin, nvm/pyenv shims) reports
1133
+ // `command not found` — while the exact same command works in a pty
1134
+ // bubble. Placed before ...env so a user-supplied PATH still wins.
1135
+ PATH: getDefaultPath(),
1126
1136
  HOME: process.env.HOME,
1127
1137
  USER: process.env.USER,
1128
1138
  SHELL: process.env.SHELL,
1129
1139
  TERM: "xterm-256color",
1130
1140
  // UTF-8 locale so the pty renders multi-byte text (CJK, emoji) correctly.
1131
- // ptyEnv is rebuilt from scratch (not inherited from process.env), and a
1141
+ // childEnv is rebuilt from scratch (not inherited from process.env), and a
1132
1142
  // macOS `--login` shell does NOT restore LANG (Terminal.app/iTerm inject it,
1133
1143
  // not the rc files) — so without this, vim/less open UTF-8 files in the
1134
1144
  // C/POSIX locale and mojibake every non-ASCII char. Pass the real locale
@@ -1152,7 +1162,7 @@ var dispatchMessage = (msg, projectCwd, registry, send) => Effect_exports.sync((
1152
1162
  };
1153
1163
  try {
1154
1164
  if (usePty) {
1155
- const ptyEnv = { PATH: getDefaultPath() };
1165
+ const ptyEnv = {};
1156
1166
  for (const [k, v] of Object.entries(childEnv)) {
1157
1167
  if (v !== void 0) ptyEnv[k] = v;
1158
1168
  }
@@ -1501,6 +1511,10 @@ var handleSessionStream = (conn, sessionId) => Effect_exports.gen(function* () {
1501
1511
  // Turn time-boundary: lets clients cut the in-flight turn's disk image by
1502
1512
  // message timestamp instead of by prompt text (see useLiveStream).
1503
1513
  startedAt: snap.startedAt,
1514
+ // Turn identity: the viewer scopes this turn's tool-call snapshots by it.
1515
+ // Not derivable from the events alone — an images-only turn seeds no
1516
+ // `_human` event to carry it.
1517
+ runId: snap.runId,
1504
1518
  outputTokens: snap.outputTokens,
1505
1519
  events: snap.events
1506
1520
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@surething/cockpit",
3
- "version": "1.0.265",
3
+ "version": "1.0.267",
4
4
  "description": "The open-source Claude Code GUI — an IDE-like workbench for parallel AI coding. Drive Claude (default), Codex, DeepSeek, Kimi, or local Ollama in tabs. Terminal, browser & DB bubbles, code review. Self-host on a shared dev box — a seat for every teammate. Local-first, MIT.",
5
5
  "author": "Robert",
6
6
  "license": "MIT",
@@ -79,14 +79,14 @@
79
79
  "next.config.mjs",
80
80
  "scripts/copy-tree-sitter-wasms.mjs",
81
81
  "scripts/copy-pdfjs-worker.mjs",
82
- "scripts/claudeBinary.mjs",
82
+ "scripts/agentBinaries.mjs",
83
83
  "LICENSE",
84
84
  "README.md"
85
85
  ],
86
86
  "scripts": {
87
87
  "predev": "node scripts/copy-tree-sitter-wasms.mjs && node scripts/copy-pdfjs-worker.mjs && node scripts/build-html-lib.mjs",
88
88
  "dev": "COCKPIT_ENV=dev node --import tsx server.mjs",
89
- "prepublishOnly": "npm run build && npm run build:server && rm -rf .next-prod/cache",
89
+ "prepublishOnly": "npm run check-agents && npm run build && npm run build:server && rm -rf .next-prod/cache",
90
90
  "prebuild": "node scripts/copy-tree-sitter-wasms.mjs && node scripts/copy-pdfjs-worker.mjs && node scripts/build-html-lib.mjs",
91
91
  "build": "next build --webpack",
92
92
  "postbuild": "node scripts/stamp-build.mjs",
@@ -96,6 +96,7 @@
96
96
  "lint": "eslint",
97
97
  "test": "vitest run",
98
98
  "test:watch": "vitest",
99
+ "check-agents": "node scripts/check-agents.mjs",
99
100
  "generate-icons": "node scripts/generate-icons.js",
100
101
  "copy-wasms": "node scripts/copy-tree-sitter-wasms.mjs",
101
102
  "copy-pdfjs-worker": "node scripts/copy-pdfjs-worker.mjs",
@@ -103,9 +104,9 @@
103
104
  },
104
105
  "dependencies": {
105
106
  "@ai-sdk/openai": "^3.0.52",
106
- "@anthropic-ai/claude-agent-sdk": "^0.3.179",
107
+ "@anthropic-ai/claude-agent-sdk": "0.3.245",
107
108
  "@dagrejs/dagre": "^3.0.0",
108
- "@openai/codex-sdk": "0.147.0",
109
+ "@openai/codex-sdk": "0.149.1",
109
110
  "@tanstack/react-virtual": "^3.13.18",
110
111
  "@tiptap/extension-link": "^3.19.0",
111
112
  "@tiptap/extension-placeholder": "^3.19.0",