@jingyi0605/codingns4dsh 0.2.1-beta.12 → 0.2.1-beta.13

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 (441) hide show
  1. package/README.en.md +3 -3
  2. package/README.md +3 -3
  3. package/data/build/dist/client/account-bar.d.ts.map +1 -1
  4. package/data/build/dist/client/account-bar.js +24 -70
  5. package/data/build/dist/client/account-bar.js.map +1 -1
  6. package/data/build/dist/client/adapter-catalog-watch.d.ts +1 -1
  7. package/data/build/dist/client/adapter-catalog-watch.d.ts.map +1 -1
  8. package/data/build/dist/client/adapter-catalog-watch.js +2 -2
  9. package/data/build/dist/client/adapter-catalog-watch.js.map +1 -1
  10. package/data/build/dist/client/bundle.js +30007 -15931
  11. package/data/build/dist/client/bundle.js.map +1 -1
  12. package/data/build/dist/client/cli-management-dialog.d.ts +21 -0
  13. package/data/build/dist/client/cli-management-dialog.d.ts.map +1 -0
  14. package/data/build/dist/client/cli-management-dialog.js +215 -0
  15. package/data/build/dist/client/cli-management-dialog.js.map +1 -0
  16. package/data/build/dist/client/cli-management-terminal.d.ts +9 -0
  17. package/data/build/dist/client/cli-management-terminal.d.ts.map +1 -0
  18. package/data/build/dist/client/cli-management-terminal.js +30 -0
  19. package/data/build/dist/client/cli-management-terminal.js.map +1 -0
  20. package/data/build/dist/client/cli-settings-dialog.d.ts +9 -0
  21. package/data/build/dist/client/cli-settings-dialog.d.ts.map +1 -0
  22. package/data/build/dist/client/cli-settings-dialog.js +45 -0
  23. package/data/build/dist/client/cli-settings-dialog.js.map +1 -0
  24. package/data/build/dist/client/cli-settings-rpc.js +1 -1
  25. package/data/build/dist/client/cli-settings-rpc.js.map +1 -1
  26. package/data/build/dist/client/cli-slots.d.ts +4 -0
  27. package/data/build/dist/client/cli-slots.d.ts.map +1 -1
  28. package/data/build/dist/client/cli-slots.js +15 -7
  29. package/data/build/dist/client/cli-slots.js.map +1 -1
  30. package/data/build/dist/client/client.editor-engine.js +4 -1
  31. package/data/build/dist/client/client.editor-engine.js.map +1 -1
  32. package/data/build/dist/client/client.native-workspace-store.js +1 -1
  33. package/data/build/dist/client/client.native-workspace-store.js.map +1 -1
  34. package/data/build/dist/client/client.primitives-adapter.js +53 -0
  35. package/data/build/dist/client/client.primitives-adapter.js.map +1 -1
  36. package/data/build/dist/client/client.session-translation.js +16 -0
  37. package/data/build/dist/client/client.session-translation.js.map +1 -1
  38. package/data/build/dist/client/client.transport.js +459 -44
  39. package/data/build/dist/client/client.transport.js.map +1 -1
  40. package/data/build/dist/client/conversation-translation-settings.d.ts +2 -1
  41. package/data/build/dist/client/conversation-translation-settings.d.ts.map +1 -1
  42. package/data/build/dist/client/conversation-translation-settings.js +7 -5
  43. package/data/build/dist/client/conversation-translation-settings.js.map +1 -1
  44. package/data/build/dist/client/desktop-assistant.js +457 -42
  45. package/data/build/dist/client/editor-engine.d.ts +1 -1
  46. package/data/build/dist/client/editor-engine.d.ts.map +1 -1
  47. package/data/build/dist/client/editor-engine.js +4 -1
  48. package/data/build/dist/client/editor-engine.js.map +1 -1
  49. package/data/build/dist/client/features/cli-adapters.d.ts +3 -1
  50. package/data/build/dist/client/features/cli-adapters.d.ts.map +1 -1
  51. package/data/build/dist/client/features/cli-adapters.js +181 -105
  52. package/data/build/dist/client/features/cli-adapters.js.map +1 -1
  53. package/data/build/dist/client/features/file-management.d.ts.map +1 -1
  54. package/data/build/dist/client/features/file-management.js +2 -0
  55. package/data/build/dist/client/features/file-management.js.map +1 -1
  56. package/data/build/dist/client/features/index.d.ts.map +1 -1
  57. package/data/build/dist/client/features/index.js +2 -0
  58. package/data/build/dist/client/features/index.js.map +1 -1
  59. package/data/build/dist/client/features/peer-host.d.ts.map +1 -1
  60. package/data/build/dist/client/features/peer-host.js +3 -0
  61. package/data/build/dist/client/features/peer-host.js.map +1 -1
  62. package/data/build/dist/client/features/quick-apps.d.ts +3 -0
  63. package/data/build/dist/client/features/quick-apps.d.ts.map +1 -0
  64. package/data/build/dist/client/features/quick-apps.js +14 -0
  65. package/data/build/dist/client/features/quick-apps.js.map +1 -0
  66. package/data/build/dist/client/html-workspace-files.d.ts +4 -0
  67. package/data/build/dist/client/html-workspace-files.d.ts.map +1 -0
  68. package/data/build/dist/client/html-workspace-files.js +114 -0
  69. package/data/build/dist/client/html-workspace-files.js.map +1 -0
  70. package/data/build/dist/client/locale.d.ts.map +1 -1
  71. package/data/build/dist/client/locale.js +6 -0
  72. package/data/build/dist/client/locale.js.map +1 -1
  73. package/data/build/dist/client/locales/cliManagement.d.ts +3 -0
  74. package/data/build/dist/client/locales/cliManagement.d.ts.map +1 -0
  75. package/data/build/dist/client/locales/cliManagement.js +139 -0
  76. package/data/build/dist/client/locales/cliManagement.js.map +1 -0
  77. package/data/build/dist/client/locales/fileWorkspace.d.ts.map +1 -1
  78. package/data/build/dist/client/locales/fileWorkspace.js +4 -0
  79. package/data/build/dist/client/locales/fileWorkspace.js.map +1 -1
  80. package/data/build/dist/client/locales/panels.js +2 -2
  81. package/data/build/dist/client/locales/panels.js.map +1 -1
  82. package/data/build/dist/client/locales/quickApps.d.ts +130 -0
  83. package/data/build/dist/client/locales/quickApps.d.ts.map +1 -0
  84. package/data/build/dist/client/locales/quickApps.js +150 -0
  85. package/data/build/dist/client/locales/quickApps.js.map +1 -0
  86. package/data/build/dist/client/native-model-translation-menu.d.ts.map +1 -1
  87. package/data/build/dist/client/native-model-translation-menu.js +3 -1
  88. package/data/build/dist/client/native-model-translation-menu.js.map +1 -1
  89. package/data/build/dist/client/quick-apps/client.d.ts +29 -0
  90. package/data/build/dist/client/quick-apps/client.d.ts.map +1 -0
  91. package/data/build/dist/client/quick-apps/client.js +68 -0
  92. package/data/build/dist/client/quick-apps/client.js.map +1 -0
  93. package/data/build/dist/client/quick-apps/document.d.ts +26 -0
  94. package/data/build/dist/client/quick-apps/document.d.ts.map +1 -0
  95. package/data/build/dist/client/quick-apps/document.js +110 -0
  96. package/data/build/dist/client/quick-apps/document.js.map +1 -0
  97. package/data/build/dist/client/quick-apps/file-picker.d.ts +14 -0
  98. package/data/build/dist/client/quick-apps/file-picker.d.ts.map +1 -0
  99. package/data/build/dist/client/quick-apps/file-picker.js +51 -0
  100. package/data/build/dist/client/quick-apps/file-picker.js.map +1 -0
  101. package/data/build/dist/client/quick-apps/launcher.d.ts +7 -0
  102. package/data/build/dist/client/quick-apps/launcher.d.ts.map +1 -0
  103. package/data/build/dist/client/quick-apps/launcher.js +252 -0
  104. package/data/build/dist/client/quick-apps/launcher.js.map +1 -0
  105. package/data/build/dist/client/quick-apps/presentation.d.ts +16 -0
  106. package/data/build/dist/client/quick-apps/presentation.d.ts.map +1 -0
  107. package/data/build/dist/client/quick-apps/presentation.js +31 -0
  108. package/data/build/dist/client/quick-apps/presentation.js.map +1 -0
  109. package/data/build/dist/client/quick-apps/reorder-animation.d.ts +6 -0
  110. package/data/build/dist/client/quick-apps/reorder-animation.d.ts.map +1 -0
  111. package/data/build/dist/client/quick-apps/reorder-animation.js +50 -0
  112. package/data/build/dist/client/quick-apps/reorder-animation.js.map +1 -0
  113. package/data/build/dist/client/quick-apps/reorder.d.ts +26 -0
  114. package/data/build/dist/client/quick-apps/reorder.d.ts.map +1 -0
  115. package/data/build/dist/client/quick-apps/reorder.js +128 -0
  116. package/data/build/dist/client/quick-apps/reorder.js.map +1 -0
  117. package/data/build/dist/client/quick-apps/styles.d.ts +3 -0
  118. package/data/build/dist/client/quick-apps/styles.d.ts.map +1 -0
  119. package/data/build/dist/client/quick-apps/styles.js +143 -0
  120. package/data/build/dist/client/quick-apps/styles.js.map +1 -0
  121. package/data/build/dist/client/quick-apps/ui.d.ts +20 -0
  122. package/data/build/dist/client/quick-apps/ui.d.ts.map +1 -0
  123. package/data/build/dist/client/quick-apps/ui.js +21 -0
  124. package/data/build/dist/client/quick-apps/ui.js.map +1 -0
  125. package/data/build/dist/client/quick-apps/viewer.d.ts +16 -0
  126. package/data/build/dist/client/quick-apps/viewer.d.ts.map +1 -0
  127. package/data/build/dist/client/quick-apps/viewer.js +155 -0
  128. package/data/build/dist/client/quick-apps/viewer.js.map +1 -0
  129. package/data/build/dist/client/quick-apps/workspace-picker.d.ts +19 -0
  130. package/data/build/dist/client/quick-apps/workspace-picker.d.ts.map +1 -0
  131. package/data/build/dist/client/quick-apps/workspace-picker.js +30 -0
  132. package/data/build/dist/client/quick-apps/workspace-picker.js.map +1 -0
  133. package/data/build/dist/client/session-translation-chat.d.ts +1 -1
  134. package/data/build/dist/client/session-translation-chat.d.ts.map +1 -1
  135. package/data/build/dist/client/session-translation-chat.js +26 -22
  136. package/data/build/dist/client/session-translation-chat.js.map +1 -1
  137. package/data/build/dist/client/sidebar-footer-style.d.ts +13 -0
  138. package/data/build/dist/client/sidebar-footer-style.d.ts.map +1 -0
  139. package/data/build/dist/client/sidebar-footer-style.js +54 -0
  140. package/data/build/dist/client/sidebar-footer-style.js.map +1 -0
  141. package/data/build/dist/client/terminal/model.d.ts.map +1 -1
  142. package/data/build/dist/client/terminal/model.js +2 -1
  143. package/data/build/dist/client/terminal/model.js.map +1 -1
  144. package/data/build/dist/dsh-capabilities/client/composer-slot-selectors.d.ts +4 -0
  145. package/data/build/dist/dsh-capabilities/client/composer-slot-selectors.d.ts.map +1 -0
  146. package/data/build/dist/dsh-capabilities/client/composer-slot-selectors.js +8 -0
  147. package/data/build/dist/dsh-capabilities/client/composer-slot-selectors.js.map +1 -0
  148. package/data/build/dist/dsh-capabilities/client/primitives-adapter.d.ts +18 -0
  149. package/data/build/dist/dsh-capabilities/client/primitives-adapter.d.ts.map +1 -1
  150. package/data/build/dist/dsh-capabilities/client/primitives-adapter.js +21 -0
  151. package/data/build/dist/dsh-capabilities/client/primitives-adapter.js.map +1 -1
  152. package/data/build/dist/dsh-capabilities/client/quick-app-footer-adapter.d.ts +18 -0
  153. package/data/build/dist/dsh-capabilities/client/quick-app-footer-adapter.d.ts.map +1 -0
  154. package/data/build/dist/dsh-capabilities/client/quick-app-footer-adapter.js +11 -0
  155. package/data/build/dist/dsh-capabilities/client/quick-app-footer-adapter.js.map +1 -0
  156. package/data/build/dist/dsh-capabilities/client/session-performance-adapter.d.ts +8 -0
  157. package/data/build/dist/dsh-capabilities/client/session-performance-adapter.d.ts.map +1 -0
  158. package/data/build/dist/dsh-capabilities/client/session-performance-adapter.js +100 -0
  159. package/data/build/dist/dsh-capabilities/client/session-performance-adapter.js.map +1 -0
  160. package/data/build/dist/dsh-capabilities/client/sidebar-footer-icon-adapter.d.ts +3 -0
  161. package/data/build/dist/dsh-capabilities/client/sidebar-footer-icon-adapter.d.ts.map +1 -0
  162. package/data/build/dist/dsh-capabilities/client/sidebar-footer-icon-adapter.js +22 -0
  163. package/data/build/dist/dsh-capabilities/client/sidebar-footer-icon-adapter.js.map +1 -0
  164. package/data/build/dist/dsh-capabilities/host/quick-app-credentials.d.ts +11 -0
  165. package/data/build/dist/dsh-capabilities/host/quick-app-credentials.d.ts.map +1 -0
  166. package/data/build/dist/dsh-capabilities/host/quick-app-credentials.js +97 -0
  167. package/data/build/dist/dsh-capabilities/host/quick-app-credentials.js.map +1 -0
  168. package/data/build/dist/dsh-capabilities/host/quick-app-https-provider.d.ts +36 -0
  169. package/data/build/dist/dsh-capabilities/host/quick-app-https-provider.d.ts.map +1 -0
  170. package/data/build/dist/dsh-capabilities/host/quick-app-https-provider.js +164 -0
  171. package/data/build/dist/dsh-capabilities/host/quick-app-https-provider.js.map +1 -0
  172. package/data/build/dist/dsh-capabilities/host/quick-app-lan-ports.d.ts +44 -0
  173. package/data/build/dist/dsh-capabilities/host/quick-app-lan-ports.d.ts.map +1 -0
  174. package/data/build/dist/dsh-capabilities/host/quick-app-lan-ports.js +240 -0
  175. package/data/build/dist/dsh-capabilities/host/quick-app-lan-ports.js.map +1 -0
  176. package/data/build/dist/dsh-capabilities/host/quick-app-origin-adapter.d.ts +37 -0
  177. package/data/build/dist/dsh-capabilities/host/quick-app-origin-adapter.d.ts.map +1 -0
  178. package/data/build/dist/dsh-capabilities/host/quick-app-origin-adapter.js +35 -0
  179. package/data/build/dist/dsh-capabilities/host/quick-app-origin-adapter.js.map +1 -0
  180. package/data/build/dist/dsh-capabilities/host/quick-app-proxy-adapter.d.ts +13 -0
  181. package/data/build/dist/dsh-capabilities/host/quick-app-proxy-adapter.d.ts.map +1 -0
  182. package/data/build/dist/dsh-capabilities/host/quick-app-proxy-adapter.js +30 -0
  183. package/data/build/dist/dsh-capabilities/host/quick-app-proxy-adapter.js.map +1 -0
  184. package/data/build/dist/dsh-capabilities/host/quick-app-proxy-provider.d.ts +21 -0
  185. package/data/build/dist/dsh-capabilities/host/quick-app-proxy-provider.d.ts.map +1 -0
  186. package/data/build/dist/dsh-capabilities/host/quick-app-proxy-provider.js +132 -0
  187. package/data/build/dist/dsh-capabilities/host/quick-app-proxy-provider.js.map +1 -0
  188. package/data/build/dist/dsh-capabilities/host/quick-app-transport.d.ts +10 -0
  189. package/data/build/dist/dsh-capabilities/host/quick-app-transport.d.ts.map +1 -0
  190. package/data/build/dist/dsh-capabilities/host/quick-app-transport.js +33 -0
  191. package/data/build/dist/dsh-capabilities/host/quick-app-transport.js.map +1 -0
  192. package/data/build/dist/dsh-capabilities/host/session-performance-adapter.d.ts +7 -0
  193. package/data/build/dist/dsh-capabilities/host/session-performance-adapter.d.ts.map +1 -0
  194. package/data/build/dist/dsh-capabilities/host/session-performance-adapter.js +18 -0
  195. package/data/build/dist/dsh-capabilities/host/session-performance-adapter.js.map +1 -0
  196. package/data/build/dist/dsh-capabilities/host/workspace-directory-adapter.d.ts +13 -0
  197. package/data/build/dist/dsh-capabilities/host/workspace-directory-adapter.d.ts.map +1 -0
  198. package/data/build/dist/dsh-capabilities/host/workspace-directory-adapter.js +24 -0
  199. package/data/build/dist/dsh-capabilities/host/workspace-directory-adapter.js.map +1 -0
  200. package/data/build/dist/dsh-capabilities/matrix.d.ts.map +1 -1
  201. package/data/build/dist/dsh-capabilities/matrix.js +7 -1
  202. package/data/build/dist/dsh-capabilities/matrix.js.map +1 -1
  203. package/data/build/dist/dsh-capabilities/routes.d.ts +1 -0
  204. package/data/build/dist/dsh-capabilities/routes.d.ts.map +1 -1
  205. package/data/build/dist/dsh-capabilities/routes.js +16 -0
  206. package/data/build/dist/dsh-capabilities/routes.js.map +1 -1
  207. package/data/build/dist/dsh-capabilities/types.d.ts +1 -1
  208. package/data/build/dist/dsh-capabilities/types.d.ts.map +1 -1
  209. package/data/build/dist/dsh-capabilities/types.js.map +1 -1
  210. package/data/build/dist/host/cli-adapters/binary-detection.d.ts.map +1 -1
  211. package/data/build/dist/host/cli-adapters/binary-detection.js +7 -3
  212. package/data/build/dist/host/cli-adapters/binary-detection.js.map +1 -1
  213. package/data/build/dist/host/cli-adapters/claude-driver.d.ts +1 -0
  214. package/data/build/dist/host/cli-adapters/claude-driver.d.ts.map +1 -1
  215. package/data/build/dist/host/cli-adapters/claude-driver.js +179 -20
  216. package/data/build/dist/host/cli-adapters/claude-driver.js.map +1 -1
  217. package/data/build/dist/host/cli-adapters/codex-driver.d.ts +18 -0
  218. package/data/build/dist/host/cli-adapters/codex-driver.d.ts.map +1 -1
  219. package/data/build/dist/host/cli-adapters/codex-driver.js +97 -5
  220. package/data/build/dist/host/cli-adapters/codex-driver.js.map +1 -1
  221. package/data/build/dist/host/cli-adapters/codex-performance-projection.d.ts +91 -0
  222. package/data/build/dist/host/cli-adapters/codex-performance-projection.d.ts.map +1 -0
  223. package/data/build/dist/host/cli-adapters/codex-performance-projection.js +8 -0
  224. package/data/build/dist/host/cli-adapters/codex-performance-projection.js.map +1 -0
  225. package/data/build/dist/host/cli-adapters/codex-performance.d.ts +16 -0
  226. package/data/build/dist/host/cli-adapters/codex-performance.d.ts.map +1 -0
  227. package/data/build/dist/host/cli-adapters/codex-performance.js +81 -0
  228. package/data/build/dist/host/cli-adapters/codex-performance.js.map +1 -0
  229. package/data/build/dist/host/cli-adapters/dsh-message-projector.d.ts.map +1 -1
  230. package/data/build/dist/host/cli-adapters/dsh-message-projector.js +17 -4
  231. package/data/build/dist/host/cli-adapters/dsh-message-projector.js.map +1 -1
  232. package/data/build/dist/host/cli-adapters/feature.d.ts +2 -0
  233. package/data/build/dist/host/cli-adapters/feature.d.ts.map +1 -1
  234. package/data/build/dist/host/cli-adapters/feature.js +37 -8
  235. package/data/build/dist/host/cli-adapters/feature.js.map +1 -1
  236. package/data/build/dist/host/cli-adapters/grok-driver.d.ts +2 -0
  237. package/data/build/dist/host/cli-adapters/grok-driver.d.ts.map +1 -1
  238. package/data/build/dist/host/cli-adapters/grok-driver.js +161 -25
  239. package/data/build/dist/host/cli-adapters/grok-driver.js.map +1 -1
  240. package/data/build/dist/host/cli-adapters/grok-performance-projection.d.ts +123 -0
  241. package/data/build/dist/host/cli-adapters/grok-performance-projection.d.ts.map +1 -0
  242. package/data/build/dist/host/cli-adapters/grok-performance-projection.js +47 -0
  243. package/data/build/dist/host/cli-adapters/grok-performance-projection.js.map +1 -0
  244. package/data/build/dist/host/cli-adapters/grok-usage.d.ts +45 -0
  245. package/data/build/dist/host/cli-adapters/grok-usage.d.ts.map +1 -0
  246. package/data/build/dist/host/cli-adapters/grok-usage.js +197 -0
  247. package/data/build/dist/host/cli-adapters/grok-usage.js.map +1 -0
  248. package/data/build/dist/host/cli-adapters/management-installation.d.ts +5 -0
  249. package/data/build/dist/host/cli-adapters/management-installation.d.ts.map +1 -0
  250. package/data/build/dist/host/cli-adapters/management-installation.js +131 -0
  251. package/data/build/dist/host/cli-adapters/management-installation.js.map +1 -0
  252. package/data/build/dist/host/cli-adapters/management-methods.d.ts +32 -0
  253. package/data/build/dist/host/cli-adapters/management-methods.d.ts.map +1 -0
  254. package/data/build/dist/host/cli-adapters/management-methods.js +135 -0
  255. package/data/build/dist/host/cli-adapters/management-methods.js.map +1 -0
  256. package/data/build/dist/host/cli-adapters/management-process.d.ts +7 -0
  257. package/data/build/dist/host/cli-adapters/management-process.d.ts.map +1 -0
  258. package/data/build/dist/host/cli-adapters/management-process.js +51 -0
  259. package/data/build/dist/host/cli-adapters/management-process.js.map +1 -0
  260. package/data/build/dist/host/cli-adapters/management.d.ts +32 -0
  261. package/data/build/dist/host/cli-adapters/management.d.ts.map +1 -0
  262. package/data/build/dist/host/cli-adapters/management.js +172 -0
  263. package/data/build/dist/host/cli-adapters/management.js.map +1 -0
  264. package/data/build/dist/host/cli-adapters/model-catalog.d.ts +1 -0
  265. package/data/build/dist/host/cli-adapters/model-catalog.d.ts.map +1 -1
  266. package/data/build/dist/host/cli-adapters/model-catalog.js +62 -0
  267. package/data/build/dist/host/cli-adapters/model-catalog.js.map +1 -1
  268. package/data/build/dist/host/cli-adapters/opencode-driver.d.ts +22 -0
  269. package/data/build/dist/host/cli-adapters/opencode-driver.d.ts.map +1 -1
  270. package/data/build/dist/host/cli-adapters/opencode-driver.js +105 -17
  271. package/data/build/dist/host/cli-adapters/opencode-driver.js.map +1 -1
  272. package/data/build/dist/host/cli-adapters/process-utils.d.ts +2 -0
  273. package/data/build/dist/host/cli-adapters/process-utils.d.ts.map +1 -1
  274. package/data/build/dist/host/cli-adapters/process-utils.js +16 -11
  275. package/data/build/dist/host/cli-adapters/process-utils.js.map +1 -1
  276. package/data/build/dist/host/cli-adapters/registry.d.ts +3 -0
  277. package/data/build/dist/host/cli-adapters/registry.d.ts.map +1 -1
  278. package/data/build/dist/host/cli-adapters/registry.js +33 -5
  279. package/data/build/dist/host/cli-adapters/registry.js.map +1 -1
  280. package/data/build/dist/host/cli-adapters/session-performance-projection.d.ts +74 -0
  281. package/data/build/dist/host/cli-adapters/session-performance-projection.d.ts.map +1 -0
  282. package/data/build/dist/host/cli-adapters/session-performance-projection.js +83 -0
  283. package/data/build/dist/host/cli-adapters/session-performance-projection.js.map +1 -0
  284. package/data/build/dist/host/cli-adapters/stream-normalizer.d.ts +3 -1
  285. package/data/build/dist/host/cli-adapters/stream-normalizer.d.ts.map +1 -1
  286. package/data/build/dist/host/cli-adapters/stream-normalizer.js +2 -0
  287. package/data/build/dist/host/cli-adapters/stream-normalizer.js.map +1 -1
  288. package/data/build/dist/host/cli-adapters/update-check.d.ts +34 -0
  289. package/data/build/dist/host/cli-adapters/update-check.d.ts.map +1 -0
  290. package/data/build/dist/host/cli-adapters/update-check.js +263 -0
  291. package/data/build/dist/host/cli-adapters/update-check.js.map +1 -0
  292. package/data/build/dist/host/features/file-management.d.ts.map +1 -1
  293. package/data/build/dist/host/features/file-management.js +8 -0
  294. package/data/build/dist/host/features/file-management.js.map +1 -1
  295. package/data/build/dist/host/features/index.d.ts.map +1 -1
  296. package/data/build/dist/host/features/index.js +2 -0
  297. package/data/build/dist/host/features/index.js.map +1 -1
  298. package/data/build/dist/host/features/lan-access-dsh.js +1 -1
  299. package/data/build/dist/host/features/lan-access-dsh.js.map +1 -1
  300. package/data/build/dist/host/features/peer-host.d.ts.map +1 -1
  301. package/data/build/dist/host/features/peer-host.js +7 -0
  302. package/data/build/dist/host/features/peer-host.js.map +1 -1
  303. package/data/build/dist/host/features/quick-apps.d.ts +4 -0
  304. package/data/build/dist/host/features/quick-apps.d.ts.map +1 -0
  305. package/data/build/dist/host/features/quick-apps.js +158 -0
  306. package/data/build/dist/host/features/quick-apps.js.map +1 -0
  307. package/data/build/dist/host/features/session-prompt-translation.d.ts +1 -1
  308. package/data/build/dist/host/features/session-prompt-translation.d.ts.map +1 -1
  309. package/data/build/dist/host/features/session-prompt-translation.js +2 -1
  310. package/data/build/dist/host/features/session-prompt-translation.js.map +1 -1
  311. package/data/build/dist/host/features/session-translation-protection.d.ts +6 -0
  312. package/data/build/dist/host/features/session-translation-protection.d.ts.map +1 -1
  313. package/data/build/dist/host/features/session-translation-protection.js +21 -0
  314. package/data/build/dist/host/features/session-translation-protection.js.map +1 -1
  315. package/data/build/dist/host/features/session-translation-recovery.d.ts +3 -2
  316. package/data/build/dist/host/features/session-translation-recovery.d.ts.map +1 -1
  317. package/data/build/dist/host/features/session-translation-recovery.js +6 -3
  318. package/data/build/dist/host/features/session-translation-recovery.js.map +1 -1
  319. package/data/build/dist/host/features/session-translation-service.d.ts +3 -0
  320. package/data/build/dist/host/features/session-translation-service.d.ts.map +1 -1
  321. package/data/build/dist/host/features/session-translation-service.js +14 -8
  322. package/data/build/dist/host/features/session-translation-service.js.map +1 -1
  323. package/data/build/dist/host/features/types.d.ts +10 -0
  324. package/data/build/dist/host/features/types.d.ts.map +1 -1
  325. package/data/build/dist/host/html-workspace-files.d.ts +3 -0
  326. package/data/build/dist/host/html-workspace-files.d.ts.map +1 -0
  327. package/data/build/dist/host/html-workspace-files.js +135 -0
  328. package/data/build/dist/host/html-workspace-files.js.map +1 -0
  329. package/data/build/dist/host/index.d.ts.map +1 -1
  330. package/data/build/dist/host/index.js +27 -2
  331. package/data/build/dist/host/index.js.map +1 -1
  332. package/data/build/dist/host/lan-access-dsh.d.ts +5 -1
  333. package/data/build/dist/host/lan-access-dsh.d.ts.map +1 -1
  334. package/data/build/dist/host/lan-access-dsh.js +43 -2
  335. package/data/build/dist/host/lan-access-dsh.js.map +1 -1
  336. package/data/build/dist/host/modules/peer-host/quick-app-gateway.d.ts +5 -0
  337. package/data/build/dist/host/modules/peer-host/quick-app-gateway.d.ts.map +1 -0
  338. package/data/build/dist/host/modules/peer-host/quick-app-gateway.js +27 -0
  339. package/data/build/dist/host/modules/peer-host/quick-app-gateway.js.map +1 -0
  340. package/data/build/dist/host/modules/quick-apps/browse.d.ts +5 -0
  341. package/data/build/dist/host/modules/quick-apps/browse.d.ts.map +1 -0
  342. package/data/build/dist/host/modules/quick-apps/browse.js +37 -0
  343. package/data/build/dist/host/modules/quick-apps/browse.js.map +1 -0
  344. package/data/build/dist/host/modules/quick-apps/code-revision.d.ts +4 -0
  345. package/data/build/dist/host/modules/quick-apps/code-revision.d.ts.map +1 -0
  346. package/data/build/dist/host/modules/quick-apps/code-revision.js +39 -0
  347. package/data/build/dist/host/modules/quick-apps/code-revision.js.map +1 -0
  348. package/data/build/dist/host/modules/quick-apps/documents.d.ts +14 -0
  349. package/data/build/dist/host/modules/quick-apps/documents.d.ts.map +1 -0
  350. package/data/build/dist/host/modules/quick-apps/documents.js +87 -0
  351. package/data/build/dist/host/modules/quick-apps/documents.js.map +1 -0
  352. package/data/build/dist/host/modules/quick-apps/errors.d.ts +8 -0
  353. package/data/build/dist/host/modules/quick-apps/errors.d.ts.map +1 -0
  354. package/data/build/dist/host/modules/quick-apps/errors.js +15 -0
  355. package/data/build/dist/host/modules/quick-apps/errors.js.map +1 -0
  356. package/data/build/dist/host/modules/quick-apps/file-api.d.ts +30 -0
  357. package/data/build/dist/host/modules/quick-apps/file-api.d.ts.map +1 -0
  358. package/data/build/dist/host/modules/quick-apps/file-api.js +149 -0
  359. package/data/build/dist/host/modules/quick-apps/file-api.js.map +1 -0
  360. package/data/build/dist/host/modules/quick-apps/launches.d.ts +35 -0
  361. package/data/build/dist/host/modules/quick-apps/launches.d.ts.map +1 -0
  362. package/data/build/dist/host/modules/quick-apps/launches.js +80 -0
  363. package/data/build/dist/host/modules/quick-apps/launches.js.map +1 -0
  364. package/data/build/dist/host/modules/quick-apps/paths.d.ts +14 -0
  365. package/data/build/dist/host/modules/quick-apps/paths.d.ts.map +1 -0
  366. package/data/build/dist/host/modules/quick-apps/paths.js +72 -0
  367. package/data/build/dist/host/modules/quick-apps/paths.js.map +1 -0
  368. package/data/build/dist/host/modules/quick-apps/registry.d.ts +30 -0
  369. package/data/build/dist/host/modules/quick-apps/registry.d.ts.map +1 -0
  370. package/data/build/dist/host/modules/quick-apps/registry.js +186 -0
  371. package/data/build/dist/host/modules/quick-apps/registry.js.map +1 -0
  372. package/data/build/dist/host/modules/quick-apps/remote.d.ts +38 -0
  373. package/data/build/dist/host/modules/quick-apps/remote.d.ts.map +1 -0
  374. package/data/build/dist/host/modules/quick-apps/remote.js +237 -0
  375. package/data/build/dist/host/modules/quick-apps/remote.js.map +1 -0
  376. package/data/build/dist/host/modules/quick-apps/service.d.ts +27 -0
  377. package/data/build/dist/host/modules/quick-apps/service.d.ts.map +1 -0
  378. package/data/build/dist/host/modules/quick-apps/service.js +170 -0
  379. package/data/build/dist/host/modules/quick-apps/service.js.map +1 -0
  380. package/data/build/dist/host/modules/quick-apps/static-handler.d.ts +8 -0
  381. package/data/build/dist/host/modules/quick-apps/static-handler.d.ts.map +1 -0
  382. package/data/build/dist/host/modules/quick-apps/static-handler.js +181 -0
  383. package/data/build/dist/host/modules/quick-apps/static-handler.js.map +1 -0
  384. package/data/build/dist/host/native-session-bridge.d.ts +5 -0
  385. package/data/build/dist/host/native-session-bridge.d.ts.map +1 -1
  386. package/data/build/dist/host/native-session-bridge.js +3 -0
  387. package/data/build/dist/host/native-session-bridge.js.map +1 -1
  388. package/data/build/dist/host/rpc.d.ts.map +1 -1
  389. package/data/build/dist/host/rpc.js +8 -3
  390. package/data/build/dist/host/rpc.js.map +1 -1
  391. package/data/build/dist/host/settings.d.ts.map +1 -1
  392. package/data/build/dist/host/settings.js +13 -0
  393. package/data/build/dist/host/settings.js.map +1 -1
  394. package/data/build/dist/host/workspace-file-mutations.d.ts +2 -0
  395. package/data/build/dist/host/workspace-file-mutations.d.ts.map +1 -0
  396. package/data/build/dist/host/workspace-file-mutations.js +15 -0
  397. package/data/build/dist/host/workspace-file-mutations.js.map +1 -0
  398. package/data/build/dist/shared/codex-performance.d.ts +3 -0
  399. package/data/build/dist/shared/codex-performance.d.ts.map +1 -0
  400. package/data/build/dist/shared/codex-performance.js +2 -0
  401. package/data/build/dist/shared/codex-performance.js.map +1 -0
  402. package/data/build/dist/shared/contracts/cli-adapter.d.ts +25 -0
  403. package/data/build/dist/shared/contracts/cli-adapter.d.ts.map +1 -1
  404. package/data/build/dist/shared/contracts/cli-management.d.ts +29 -0
  405. package/data/build/dist/shared/contracts/cli-management.d.ts.map +1 -0
  406. package/data/build/dist/shared/contracts/cli-management.js +2 -0
  407. package/data/build/dist/shared/contracts/cli-management.js.map +1 -0
  408. package/data/build/dist/shared/contracts/config.d.ts +2 -0
  409. package/data/build/dist/shared/contracts/config.d.ts.map +1 -1
  410. package/data/build/dist/shared/contracts/config.js.map +1 -1
  411. package/data/build/dist/shared/contracts/quick-apps.d.ts +68 -0
  412. package/data/build/dist/shared/contracts/quick-apps.d.ts.map +1 -0
  413. package/data/build/dist/shared/contracts/quick-apps.js +4 -0
  414. package/data/build/dist/shared/contracts/quick-apps.js.map +1 -0
  415. package/data/build/dist/shared/contracts/session-translation.d.ts +8 -3
  416. package/data/build/dist/shared/contracts/session-translation.d.ts.map +1 -1
  417. package/data/build/dist/shared/contracts/session-translation.js +14 -0
  418. package/data/build/dist/shared/contracts/session-translation.js.map +1 -1
  419. package/data/build/dist/shared/contracts/version.d.ts +1 -1
  420. package/data/build/dist/shared/contracts/version.js +1 -1
  421. package/data/build/dist/shared/peer-host-http-routes.d.ts +4 -0
  422. package/data/build/dist/shared/peer-host-http-routes.d.ts.map +1 -1
  423. package/data/build/dist/shared/peer-host-http-routes.js +4 -0
  424. package/data/build/dist/shared/peer-host-http-routes.js.map +1 -1
  425. package/data/build/dist/shared/quick-app-proxy-path.d.ts +6 -0
  426. package/data/build/dist/shared/quick-app-proxy-path.d.ts.map +1 -0
  427. package/data/build/dist/shared/quick-app-proxy-path.js +18 -0
  428. package/data/build/dist/shared/quick-app-proxy-path.js.map +1 -0
  429. package/data/build/dist/shared/quick-apps-bootstrap-locale.d.ts +7 -0
  430. package/data/build/dist/shared/quick-apps-bootstrap-locale.d.ts.map +1 -0
  431. package/data/build/dist/shared/quick-apps-bootstrap-locale.js +10 -0
  432. package/data/build/dist/shared/quick-apps-bootstrap-locale.js.map +1 -0
  433. package/data/build/dist/shared/request-performance.d.ts +15 -0
  434. package/data/build/dist/shared/request-performance.d.ts.map +1 -0
  435. package/data/build/dist/shared/request-performance.js +3 -0
  436. package/data/build/dist/shared/request-performance.js.map +1 -0
  437. package/package.json +1 -1
  438. package/profile/README.md +2 -2
  439. package/profile/package.json +2 -2
  440. package/profile/version.json +1 -1
  441. package/version.json +1 -1
@@ -16,6 +16,7 @@ import { readAgentQuestions } from './interaction-events.js';
16
16
  import { commandEnvironment, WINDOWS } from './process-utils.js';
17
17
  import { imageArtifactPathsFromValue, stripImageMarkdown } from '../image-artifact-store.js';
18
18
  import { advanceCodingNsSegment, createCodingNsSegmentState, decorateCodingNsSegmentEvent } from './stream-normalizer.js';
19
+ import { GrokContextUsage, GrokPromptUsage } from './grok-usage.js';
19
20
  /** Grok Build 的 ACP stdio 驱动。ACP 会话和权限细节只在 Host 进程内处理。 */
20
21
  export class GrokBuildDriver {
21
22
  descriptor = { id: 'grok', name: 'Grok Build', protocol: 'acp', capabilities: ['models', 'skills', 'stream', 'tool-events', 'reasoning', 'usage', 'permission', 'questions'] };
@@ -24,6 +25,7 @@ export class GrokBuildDriver {
24
25
  runSpawnSync;
25
26
  runSpawn;
26
27
  sessionRoots;
28
+ now;
27
29
  cachedBinary = null;
28
30
  processes = new Set();
29
31
  sessions = new Map();
@@ -31,6 +33,7 @@ export class GrokBuildDriver {
31
33
  this.binaries = options.binaries ?? ['grok', 'grok-build'];
32
34
  this.runSpawnSync = options.spawnSync ?? spawnSync;
33
35
  this.runSpawn = options.spawn ?? spawn;
36
+ this.now = options.now ?? Date.now;
34
37
  this.sessionRoots = options.sessionRoots ?? [join(process.env.GROK_HOME ?? join(homedir(), '.grok'), 'sessions')];
35
38
  }
36
39
  async detect() {
@@ -114,27 +117,40 @@ export class GrokBuildDriver {
114
117
  const segmentState = createCodingNsSegmentState();
115
118
  let stepPhase;
116
119
  let stepStreamId;
117
- const activeTools = new Set();
120
+ const activeTools = new Map();
121
+ const streamedToolInputs = new Map();
118
122
  try {
119
123
  if (providerSessionId === '') {
120
124
  const session = await rpc.request('session/new', {
121
125
  cwd: input.cwd ?? process.cwd(),
122
126
  mcpServers: acpBridgeMcpServers(input.sessionId, this.descriptor.id),
123
- ...(!isProviderDefaultModel(input.modelId) ? { model: input.modelId } : {}),
124
127
  }, { signal: input.signal });
125
128
  providerSessionId = readSessionId(session) ?? input.sessionId;
129
+ state.contextUsage.observe(session);
126
130
  state.providerSessionId = providerSessionId;
127
131
  this.sessions.set(input.sessionId, state);
128
132
  this.sessions.set(providerSessionId, state);
129
133
  }
130
134
  yield { type: 'session-binding', providerSessionId };
135
+ // Grok 1.0.52 ignores the model field on session/new. Apply explicit
136
+ // selections after both creation and restoration, including reused sessions.
137
+ if (input.modelId && !isProviderDefaultModel(input.modelId)) {
138
+ const selected = await rpc.request('session/set_model', { sessionId: providerSessionId, modelId: input.modelId }, { signal: input.signal });
139
+ state.contextUsage.modelId = input.modelId;
140
+ state.contextUsage.observe(selected);
141
+ }
142
+ if (input.effortId) {
143
+ await rpc.request('session/set_config_option', { sessionId: providerSessionId, configId: 'reasoning_effort', value: input.effortId }, { signal: input.signal });
144
+ }
131
145
  // Skill 斜杠命令由 Grok 在用户输入开头解析,不能把普通提示插到命令前。
132
146
  const nativeCommand = /^\s*\/[A-Za-z0-9][A-Za-z0-9._:-]*(?:\s|$)/u.test(input.prompt);
133
147
  const prompt = [
134
148
  ...(nativeCommand ? [] : [{ type: 'text', text: GROK_QUESTION_GUIDANCE }]),
135
149
  ...await buildAcpPromptBlocks(input.prompt, input.attachments ?? []),
136
150
  ];
151
+ const usage = new GrokPromptUsage(promptId, state.contextUsage, this.now);
137
152
  stream = streamGrokPrompt(rpc, providerSessionId, promptId, prompt, input.signal, (notification) => {
153
+ usage.observe(notification);
138
154
  const elicitation = readAcpElicitationRequest(notification);
139
155
  if (elicitation !== null)
140
156
  state.questions.set(elicitation.requestId, elicitation);
@@ -145,8 +161,9 @@ export class GrokBuildDriver {
145
161
  // 已回答的问题被重新登记。tool_call 可以先显示问题卡并暂存用户答案。
146
162
  const requestId = interactionRequestId(notification);
147
163
  if (requestId !== null && notification.id !== undefined && notification.id !== null)
148
- state.requests.set(requestId, { rpcId: notification.id, ...permissionOptions(notification) });
149
- });
164
+ state.requests.set(requestId, { rpcId: notification.id, callId: permissionCallId(notification), ...permissionOptions(notification) });
165
+ return usage.takeObservation();
166
+ }, response => { usage.observeResponse(response); return usage.takeObservation(); });
150
167
  let finishResult;
151
168
  while (true) {
152
169
  const item = await stream.next();
@@ -154,13 +171,24 @@ export class GrokBuildDriver {
154
171
  finishResult = item.value;
155
172
  break;
156
173
  }
174
+ if (item.value.codingnsGrokObservation !== undefined)
175
+ yield item.value.codingnsGrokObservation;
157
176
  const streamId = grokStreamId(item.value);
158
- for (const rawChunk of acpMessageToChunks(item.value)) {
159
- const resolved = rawChunk.type === 'image-artifact'
177
+ for (const rawChunk of grokToolInputChunks(item.value, streamedToolInputs) ?? acpMessageToChunks(item.value)) {
178
+ // Settle native turn accounting once, after the terminal drain. Per-call
179
+ // usage is retained by the RPC observer solely for timing and fallback.
180
+ if (rawChunk.type === 'usage')
181
+ continue;
182
+ let resolved = rawChunk.type === 'image-artifact'
160
183
  ? await resolveGrokImageArtifact(rawChunk, state, this.sessionRoots)
161
184
  : rawChunk;
162
185
  if (resolved === null)
163
186
  continue;
187
+ if (resolved.type === 'tool-event' && resolved.status === 'failed' && resolved.callId) {
188
+ const denial = state.permissionDenials.get(resolved.callId);
189
+ if (denial !== undefined)
190
+ resolved = { ...resolved, error: denial, output: denial, outputMode: 'snapshot' };
191
+ }
164
192
  const chunk = decorateCodingNsSegmentEvent(resolved, input, segmentState, this.descriptor.id);
165
193
  if (chunk.type === 'question-request' && state.grokQuestionCallIds.has(chunk.requestId)) {
166
194
  if (state.grokQuestionEventIds.has(chunk.requestId))
@@ -189,7 +217,7 @@ export class GrokBuildDriver {
189
217
  if (chunk.status === 'completed' || chunk.status === 'failed')
190
218
  activeTools.delete(callId);
191
219
  else
192
- activeTools.add(callId);
220
+ activeTools.set(callId, chunk.toolName === 'tool' ? activeTools.get(callId) ?? chunk.toolName : chunk.toolName);
193
221
  }
194
222
  yield chunk;
195
223
  advanceCodingNsSegment(chunk, segmentState);
@@ -197,7 +225,30 @@ export class GrokBuildDriver {
197
225
  segmentState.segment += 1;
198
226
  }
199
227
  }
200
- reusable = finishResult.reason !== 'cancel' && !input.signal?.aborted;
228
+ const settledUsage = usage.finish();
229
+ if (settledUsage !== undefined) {
230
+ const { requestPerformance: _observed, ...accounting } = settledUsage;
231
+ yield accounting;
232
+ }
233
+ if (finishResult.failure?.code === 'PERMISSION_DENIED') {
234
+ const denial = [...state.permissionDenials.values()].at(-1);
235
+ if (denial !== undefined)
236
+ finishResult = { ...finishResult, failure: { message: denial, code: 'PERMISSION_DENIED' } };
237
+ }
238
+ // A normal prompt stop does not confirm pending tool execution. Keep the
239
+ // observed arguments and make the unknown outcome explicit without retrying.
240
+ if (activeTools.size > 0) {
241
+ for (const [callId, toolName] of activeTools) {
242
+ const error = 'Grok ended the turn without reporting a final result for this tool; its outcome is unconfirmed.';
243
+ yield decorateCodingNsSegmentEvent({ type: 'tool-event', callId, toolName, status: 'failed', error, output: error, outputMode: 'snapshot' }, input, segmentState, this.descriptor.id);
244
+ }
245
+ if (finishResult.reason === 'stop')
246
+ finishResult = {
247
+ reason: 'error',
248
+ failure: { message: 'Grok ended the turn before all tool results were confirmed.', code: 'INCOMPLETE_TOOL_RESULT' },
249
+ };
250
+ }
251
+ reusable = finishResult.reason === 'stop' && !input.signal?.aborted;
201
252
  yield { type: 'finish', reason: finishResult.reason, ...(finishResult.failure === undefined ? {} : { failure: finishResult.failure }) };
202
253
  }
203
254
  finally {
@@ -213,7 +264,8 @@ export class GrokBuildDriver {
213
264
  state.grokQuestionEventIds.clear();
214
265
  state.questions.clear();
215
266
  state.requests.clear();
216
- if (stream !== undefined && !reusable) {
267
+ state.permissionDenials.clear();
268
+ if (!reusable) {
217
269
  // An abandoned prompt can keep producing updates without prompt metadata.
218
270
  // Reload its persisted session on a fresh transport before accepting new input.
219
271
  await rpc.disposeAndWait();
@@ -230,7 +282,10 @@ export class GrokBuildDriver {
230
282
  throw new Error('The Grok permission request does not exist');
231
283
  state.requests.delete(response.requestId);
232
284
  const optionId = response.approved ? pending.allowOptionId : pending.rejectOptionId;
233
- state.rpc.respond(pending.rpcId, { outcome: { outcome: 'selected', optionId } });
285
+ if (!response.approved || optionId === undefined) {
286
+ state.permissionDenials.set(pending.callId ?? response.requestId, response.reason ?? (response.approved ? 'Grok did not offer a one-time approval option.' : 'Grok tool execution was denied.'));
287
+ }
288
+ state.rpc.respond(pending.rpcId, { outcome: optionId === undefined ? { outcome: 'cancelled' } : { outcome: 'selected', optionId } });
234
289
  }
235
290
  respondQuestion(sessionId, response) {
236
291
  const state = this.sessions.get(sessionId);
@@ -252,28 +307,38 @@ export class GrokBuildDriver {
252
307
  dispose() { for (const process of this.processes)
253
308
  process.dispose(); this.processes.clear(); this.sessions.clear(); this.cachedBinary = null; }
254
309
  async getSession(input, command) {
310
+ const alwaysApprove = input.permission?.sandboxMode === 'danger-full-access' && input.permission.approvalPolicy === 'never';
255
311
  const previous = this.sessions.get(input.sessionId);
256
- if (previous !== undefined && previous.cwd === input.cwd && !previous.rpc.isClosed)
312
+ if (previous !== undefined && previous.cwd === input.cwd && previous.alwaysApprove === alwaysApprove && !previous.rpc.isClosed)
257
313
  return previous;
258
314
  if (previous !== undefined) {
259
315
  await previous.rpc.disposeAndWait();
260
316
  this.processes.delete(previous.rpc);
261
317
  }
262
318
  const resumeId = input.providerSessionId ?? (previous?.cwd === input.cwd ? previous?.providerSessionId : undefined);
263
- const rpc = new JsonRpcProcess({ command, args: ['agent', '--no-leader', 'stdio'], cwd: input.cwd, env: grokRuntimeEnvironment(), spawn: this.runSpawn });
319
+ const rpc = new JsonRpcProcess({ command, args: ['agent', '--no-leader', ...(alwaysApprove ? ['--always-approve'] : []), 'stdio'], cwd: input.cwd, env: grokRuntimeEnvironment(), spawn: this.runSpawn });
264
320
  this.processes.add(rpc);
265
- const state = { rpc, cwd: input.cwd, rawStoreRef: input.rawStoreRef, providerSessionId: '', requests: new Map(), questions: new Map(), grokQuestions: new Map(), grokQuestionCallIds: new Set(), grokQuestionEventIds: new Set() };
266
- await rpc.request('initialize', {
321
+ const state = { rpc, contextUsage: new GrokContextUsage(), cwd: input.cwd, rawStoreRef: input.rawStoreRef, alwaysApprove, providerSessionId: '', requests: new Map(), permissionDenials: new Map(), questions: new Map(), grokQuestions: new Map(), grokQuestionCallIds: new Set(), grokQuestionEventIds: new Set() };
322
+ rpc.addNotificationListener(message => {
323
+ const params = isRecord(message.params) ? message.params : {};
324
+ const owner = state.providerSessionId || resumeId;
325
+ if (owner && typeof params.sessionId === 'string' && params.sessionId !== owner)
326
+ return;
327
+ state.contextUsage.observe(message);
328
+ });
329
+ const initialized = await rpc.request('initialize', {
267
330
  protocolVersion: 1,
268
331
  clientInfo: { name: 'codingns4dsh', version: '0.1.1' },
269
332
  // 旧版 Grok 读取 capabilities;标准 ACP 读取 clientCapabilities。
270
333
  capabilities: ACP_FORM_CLIENT_CAPABILITIES,
271
334
  clientCapabilities: ACP_FORM_CLIENT_CAPABILITIES,
272
335
  });
336
+ state.contextUsage.observe(initialized);
273
337
  rpc.notify('initialized', {});
274
338
  if (resumeId) {
275
339
  try {
276
340
  const loaded = await rpc.request('session/load', { sessionId: resumeId, cwd: input.cwd ?? process.cwd(), mcpServers: acpBridgeMcpServers(input.sessionId, this.descriptor.id) });
341
+ state.contextUsage.observe(loaded);
277
342
  state.providerSessionId = readSessionId(loaded) ?? resumeId;
278
343
  }
279
344
  catch { /* 旧版 ACP 没有 load,下一轮在同一进程创建新会话 */ }
@@ -303,7 +368,7 @@ export class GrokBuildDriver {
303
368
  const requestId = interactionRequestId(message);
304
369
  if (requestId === null || message.id === undefined || message.id === null)
305
370
  return { outcome: { outcome: 'cancelled' } };
306
- state.requests.set(requestId, { rpcId: message.id, ...permissionOptions(message) });
371
+ state.requests.set(requestId, { rpcId: message.id, callId: permissionCallId(message), ...permissionOptions(message) });
307
372
  return new Promise(() => undefined);
308
373
  });
309
374
  this.sessions.set(input.sessionId, state);
@@ -333,7 +398,7 @@ const GROK_QUESTION_GUIDANCE = [
333
398
  * Grok 可能先返回 prompt 响应,再补发最后一批 session/update。
334
399
  * 响应或终态任一先到都会启动固定排空窗口,窗口内的文本和错误仍会被消费。
335
400
  */
336
- async function* streamGrokPrompt(rpc, sessionId, promptId, prompt, signal, onNotification) {
401
+ async function* streamGrokPrompt(rpc, sessionId, promptId, prompt, signal, onNotification, onResponse) {
337
402
  const queue = [];
338
403
  const requestController = new AbortController();
339
404
  let wake;
@@ -350,8 +415,8 @@ async function* streamGrokPrompt(rpc, sessionId, promptId, prompt, signal, onNot
350
415
  const listener = (message) => {
351
416
  if (!isGrokPromptMessage(message, sessionId, promptId))
352
417
  return;
353
- queue.push(message);
354
- onNotification(message);
418
+ const observation = onNotification(message);
419
+ queue.push(observation === undefined ? message : { ...message, codingnsGrokObservation: observation });
355
420
  const notificationReason = grokNotificationReason(message);
356
421
  if (notificationReason === null) {
357
422
  notify();
@@ -383,9 +448,15 @@ async function* streamGrokPrompt(rpc, sessionId, promptId, prompt, signal, onNot
383
448
  prompt,
384
449
  _meta: { promptId },
385
450
  }, { signal: requestController.signal, killOnAbort: false }).then((response) => {
451
+ if (signal?.aborted)
452
+ return;
453
+ const observation = onResponse(response);
454
+ if (observation !== undefined)
455
+ queue.push({ method: 'codingns/grok-observation', codingnsGrokObservation: observation });
386
456
  const responseReason = grokPromptReason(response);
387
457
  if (responseReason !== null)
388
458
  terminalReason = mergeGrokReason(terminalReason, responseReason);
459
+ failure ??= grokPermissionFailure(response);
389
460
  beginDrain();
390
461
  }, () => {
391
462
  if (requestController.signal.aborted)
@@ -436,9 +507,43 @@ function isGrokPromptMessage(message, sessionId, promptId) {
436
507
  return false;
437
508
  const update = isRecord(params.update) ? params.update : params;
438
509
  const meta = isRecord(params._meta) ? params._meta : {};
510
+ if (meta.isReplay === true)
511
+ return false;
439
512
  const owner = firstToolText(update.prompt_id, update.promptId, meta.promptId);
440
513
  return owner === undefined || owner === promptId;
441
514
  }
515
+ function grokToolInputChunks(message, inputs) {
516
+ const params = isRecord(message.params) ? message.params : message;
517
+ const update = isRecord(params.update) ? params.update : params;
518
+ if (update.sessionUpdate !== 'tool_call_delta_chunk' || !Number.isInteger(update.tool_index))
519
+ return null;
520
+ const index = update.tool_index;
521
+ const callId = firstToolText(update.tool_call_id, update.toolCallId);
522
+ // Argument fragments omit the call id; a new id resets a reused model-call index.
523
+ let pending = inputs.get(index);
524
+ const started = callId !== undefined && pending?.callId !== callId;
525
+ if (started) {
526
+ pending = { callId, toolName: firstToolText(update.name, update.title) ?? 'tool', arguments: '' };
527
+ inputs.set(index, pending);
528
+ }
529
+ if (pending === undefined)
530
+ return [];
531
+ if (typeof update.arguments_delta === 'string')
532
+ pending.arguments += update.arguments_delta;
533
+ let input;
534
+ try {
535
+ const parsed = JSON.parse(pending.arguments);
536
+ if (isRecord(parsed))
537
+ input = JSON.stringify(parsed);
538
+ }
539
+ catch { /* Do not persist incomplete JSON as a tool's final arguments. */ }
540
+ if (!started && input === undefined)
541
+ return [];
542
+ return [{
543
+ type: 'tool-event', callId: pending.callId, toolName: pending.toolName, status: 'running',
544
+ ...(input === undefined ? {} : { input }),
545
+ }];
546
+ }
442
547
  function grokPromptReason(value) {
443
548
  if (!isRecord(value))
444
549
  return null;
@@ -446,9 +551,15 @@ function grokPromptReason(value) {
446
551
  if (reason === undefined)
447
552
  return null;
448
553
  if (reason === 'cancelled' || reason === 'canceled')
449
- return 'cancel';
554
+ return grokPermissionFailure(value) === undefined ? 'cancel' : 'error';
450
555
  return reason === 'error' || reason === 'failed' ? 'error' : 'stop';
451
556
  }
557
+ function grokPermissionFailure(value) {
558
+ if (!isRecord(value) || !isRecord(value._meta) || value._meta.cancellationCategory !== 'PermissionRejected')
559
+ return undefined;
560
+ const context = isRecord(value._meta.cancellationContext) ? value._meta.cancellationContext : {};
561
+ return { message: firstToolText(context.reason) ?? 'Grok tool execution was denied.', code: 'PERMISSION_DENIED' };
562
+ }
452
563
  function mergeGrokReason(current, next) {
453
564
  if (current === 'error' || next === 'error')
454
565
  return 'error';
@@ -466,13 +577,18 @@ function grokNotificationReason(message) {
466
577
  : '';
467
578
  if (['turn_error', 'turn_failed', 'error', 'failed'].includes(type))
468
579
  return 'error';
469
- if (['turn_completed', 'turn_complete', 'prompt_complete', 'completed', 'done'].includes(type))
470
- return grokPromptReason(update) ?? 'stop';
580
+ if (['turn_completed', 'turn_complete', 'prompt_complete', 'completed', 'done'].includes(type)) {
581
+ const reason = grokPromptReason(update) ?? 'stop';
582
+ return reason === 'cancel' && grokPermissionFailure(params) !== undefined ? 'error' : reason;
583
+ }
471
584
  return null;
472
585
  }
473
586
  function grokFailure(message) {
474
587
  const params = isRecord(message.params) ? message.params : message;
475
588
  const update = isRecord(params.update) ? params.update : params;
589
+ const permissionFailure = grokPermissionFailure(update) ?? grokPermissionFailure(params);
590
+ if (permissionFailure !== undefined)
591
+ return permissionFailure;
476
592
  const error = isRecord(update.error) ? update.error : update;
477
593
  const detail = firstToolText(error.message, error.errorMessage, error.error_message, error.detail, error.reason);
478
594
  if (detail === undefined)
@@ -622,13 +738,19 @@ function acpMessageToChunks(message) {
622
738
  if (!name && !callId)
623
739
  return [];
624
740
  const input = serializeToolValue(tool.rawInput ?? tool.input ?? tool.arguments ?? tool.args ?? update.rawInput);
625
- const output = serializeToolValue(tool.rawOutput ?? tool.output ?? tool.result ?? update.rawOutput);
741
+ // ACP tool results can contain nested text blocks without a rawOutput field.
742
+ const content = tool.content ?? update.content;
743
+ const contentText = Array.isArray(content)
744
+ ? content.flatMap((block) => isRecord(block) ? textValue(block.content ?? block) ?? [] : []).join('\n') || undefined
745
+ : undefined;
746
+ const rawOutput = serializeToolValue(tool.rawOutput ?? tool.output ?? tool.result ?? update.rawOutput);
747
+ const output = rawOutput ?? contentText;
626
748
  const error = serializeToolValue(tool.error ?? update.error);
627
749
  const agentId = firstToolText(tool.agentId, tool.agent_id, update.agentId, update.agent_id);
628
750
  const detail = serializeToolValue(tool.detail ?? update.detail ?? update.content);
629
751
  const fallback = error !== undefined || type.includes('error') || type.includes('fail')
630
752
  ? 'failed'
631
- : output !== undefined || type.includes('result') || type.includes('complete')
753
+ : rawOutput !== undefined || type.includes('result') || type.includes('complete')
632
754
  ? 'completed'
633
755
  : 'running';
634
756
  return [...imageEvents, {
@@ -687,6 +809,12 @@ function permissionRequestId(message) {
687
809
  function interactionRequestId(message) {
688
810
  return permissionRequestId(message);
689
811
  }
812
+ function permissionCallId(message) {
813
+ const params = isRecord(message.params) ? message.params : message;
814
+ const update = isRecord(params.update) ? params.update : params;
815
+ const tool = isRecord(update.toolCall) ? update.toolCall : isRecord(update.tool_call) ? update.tool_call : update;
816
+ return firstToolText(tool.toolCallId, tool.tool_call_id, tool.callId, tool.call_id);
817
+ }
690
818
  function permissionOptions(message) {
691
819
  const params = isRecord(message.params) ? message.params : {};
692
820
  const options = Array.isArray(params.options) ? params.options : [];
@@ -698,9 +826,17 @@ function permissionOptions(message) {
698
826
  return [];
699
827
  return [{ id, kind: firstToolText(option.kind, option.type)?.toLowerCase() ?? '' }];
700
828
  });
829
+ if (ids.length === 0)
830
+ return { allowOptionId: 'allow-once', rejectOptionId: 'reject-once' };
831
+ // Grok lists allow_always before allow_once. A DSH one-time approval must
832
+ // never become a persistent grant merely because of provider option order.
701
833
  return {
702
- allowOptionId: ids.find((option) => /allow|approve|accept/u.test(option.kind))?.id ?? ids[0]?.id ?? 'allow-once',
703
- rejectOptionId: ids.find((option) => /reject|deny|decline|cancel/u.test(option.kind))?.id ?? ids[1]?.id ?? 'reject-once',
834
+ allowOptionId: ids.find((option) => option.kind === 'allow_once')?.id
835
+ ?? ids.find((option) => /^(allow|approve|accept)$/u.test(option.kind))?.id
836
+ ?? (ids[0]?.kind === '' ? ids[0].id : undefined),
837
+ rejectOptionId: ids.find((option) => option.kind === 'reject_once')?.id
838
+ ?? ids.find((option) => /^(reject|deny|decline|cancel)$/u.test(option.kind))?.id
839
+ ?? (ids[1]?.kind === '' ? ids[1].id : undefined),
704
840
  };
705
841
  }
706
842
  function readSessionId(value) {
@@ -1 +1 @@
1
- {"version":3,"file":"grok-driver.js","sourceRoot":"","sources":["../../../../../src/host/cli-adapters/grok-driver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grok-driver.js","sourceRoot":"","sources":["../../../../../src/host/cli-adapters/grok-driver.ts"],"names":[],"mappings":"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"}