@jingyi0605/codingns4dsh 0.2.1-beta.4 → 0.2.1-beta.6

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 (459) hide show
  1. package/README.en.md +134 -159
  2. package/README.md +128 -261
  3. package/assets/provider-icons/doubao.png +0 -0
  4. package/data/build/dist/client/account-bar.d.ts +1 -1
  5. package/data/build/dist/client/account-bar.d.ts.map +1 -1
  6. package/data/build/dist/client/account-bar.js +22 -14
  7. package/data/build/dist/client/account-bar.js.map +1 -1
  8. package/data/build/dist/client/adapter-catalog-watch.d.ts +8 -0
  9. package/data/build/dist/client/adapter-catalog-watch.d.ts.map +1 -0
  10. package/data/build/dist/client/adapter-catalog-watch.js +79 -0
  11. package/data/build/dist/client/adapter-catalog-watch.js.map +1 -0
  12. package/data/build/dist/client/avatar/catalog-panel.d.ts +1 -1
  13. package/data/build/dist/client/avatar/catalog-panel.d.ts.map +1 -1
  14. package/data/build/dist/client/avatar/catalog-panel.js +13 -11
  15. package/data/build/dist/client/avatar/catalog-panel.js.map +1 -1
  16. package/data/build/dist/client/avatar/engine.d.ts.map +1 -1
  17. package/data/build/dist/client/avatar/engine.js +26 -7
  18. package/data/build/dist/client/avatar/engine.js.map +1 -1
  19. package/data/build/dist/client/avatar/live2d.d.ts +2 -0
  20. package/data/build/dist/client/avatar/live2d.d.ts.map +1 -1
  21. package/data/build/dist/client/avatar/live2d.js +16 -6
  22. package/data/build/dist/client/avatar/live2d.js.map +1 -1
  23. package/data/build/dist/client/avatar/manager.d.ts.map +1 -1
  24. package/data/build/dist/client/avatar/manager.js +8 -2
  25. package/data/build/dist/client/avatar/manager.js.map +1 -1
  26. package/data/build/dist/client/avatar/slot.d.ts.map +1 -1
  27. package/data/build/dist/client/avatar/slot.js +4 -1
  28. package/data/build/dist/client/avatar/slot.js.map +1 -1
  29. package/data/build/dist/client/bundle.js +48459 -98385
  30. package/data/build/dist/client/bundle.js.map +1 -1
  31. package/data/build/dist/client/cli-catalog.d.ts +5 -0
  32. package/data/build/dist/client/cli-catalog.d.ts.map +1 -1
  33. package/data/build/dist/client/cli-catalog.js +15 -0
  34. package/data/build/dist/client/cli-catalog.js.map +1 -1
  35. package/data/build/dist/client/cli-slots.d.ts.map +1 -1
  36. package/data/build/dist/client/cli-slots.js +7 -45
  37. package/data/build/dist/client/cli-slots.js.map +1 -1
  38. package/data/build/dist/client/client.assistant-configuration-view.js +4526 -0
  39. package/data/build/dist/client/client.assistant-configuration-view.js.map +1 -0
  40. package/data/build/dist/client/client.assistant-debug-workbench.js +764 -0
  41. package/data/build/dist/client/client.assistant-debug-workbench.js.map +1 -0
  42. package/data/build/dist/client/client.assistant-prompt-editor.js +76 -0
  43. package/data/build/dist/client/client.assistant-prompt-editor.js.map +1 -0
  44. package/data/build/dist/client/client.assistant-prompts.js +44 -0
  45. package/data/build/dist/client/client.assistant-prompts.js.map +1 -0
  46. package/data/build/dist/client/client.assistant-voice-sessions.js +144 -0
  47. package/data/build/dist/client/client.assistant-voice-sessions.js.map +1 -0
  48. package/data/build/dist/client/client.assistant-workbench.js +2929 -0
  49. package/data/build/dist/client/client.assistant-workbench.js.map +1 -0
  50. package/data/build/dist/client/client.delegate-command.js +1315 -0
  51. package/data/build/dist/client/client.delegate-command.js.map +1 -0
  52. package/data/build/dist/client/client.editor-engine.js +32486 -0
  53. package/data/build/dist/client/client.editor-engine.js.map +1 -0
  54. package/data/build/dist/client/client.manager.js +3454 -0
  55. package/data/build/dist/client/client.manager.js.map +1 -0
  56. package/data/build/dist/client/client.model-catalog-cache.js +543 -0
  57. package/data/build/dist/client/client.model-catalog-cache.js.map +1 -0
  58. package/data/build/dist/client/client.native-workspace-store.js +689 -0
  59. package/data/build/dist/client/client.native-workspace-store.js.map +1 -0
  60. package/data/build/dist/client/client.primitives-adapter.js +333 -0
  61. package/data/build/dist/client/client.primitives-adapter.js.map +1 -0
  62. package/data/build/dist/client/client.react-dom.js +7286 -0
  63. package/data/build/dist/client/client.react-dom.js.map +1 -0
  64. package/data/build/dist/client/client.rolldown-runtime.js +59 -0
  65. package/data/build/dist/client/client.theme.js +386 -0
  66. package/data/build/dist/client/client.theme.js.map +1 -0
  67. package/data/build/dist/client/client.transport.js +3323 -0
  68. package/data/build/dist/client/client.transport.js.map +1 -0
  69. package/data/build/dist/client/client.xterm-engine.js +13064 -0
  70. package/data/build/dist/client/client.xterm-engine.js.map +1 -0
  71. package/data/build/dist/client/debug/ui.d.ts.map +1 -1
  72. package/data/build/dist/client/debug/ui.js +14 -5
  73. package/data/build/dist/client/debug/ui.js.map +1 -1
  74. package/data/build/dist/client/desktop-assistant.js +19 -5
  75. package/data/build/dist/client/editor-engine.d.ts +4 -0
  76. package/data/build/dist/client/editor-engine.d.ts.map +1 -0
  77. package/data/build/dist/client/editor-engine.js +50 -0
  78. package/data/build/dist/client/editor-engine.js.map +1 -0
  79. package/data/build/dist/client/engine-loader.d.ts +5 -0
  80. package/data/build/dist/client/engine-loader.d.ts.map +1 -0
  81. package/data/build/dist/client/engine-loader.js +35 -0
  82. package/data/build/dist/client/engine-loader.js.map +1 -0
  83. package/data/build/dist/client/features/assistant-configuration-loader.d.ts +14 -0
  84. package/data/build/dist/client/features/assistant-configuration-loader.d.ts.map +1 -0
  85. package/data/build/dist/client/features/assistant-configuration-loader.js +13 -0
  86. package/data/build/dist/client/features/assistant-configuration-loader.js.map +1 -0
  87. package/data/build/dist/client/features/assistant-configuration-session.d.ts.map +1 -1
  88. package/data/build/dist/client/features/assistant-configuration-session.js +13 -4
  89. package/data/build/dist/client/features/assistant-configuration-session.js.map +1 -1
  90. package/data/build/dist/client/features/assistant-configuration-view.d.ts +66 -0
  91. package/data/build/dist/client/features/assistant-configuration-view.d.ts.map +1 -0
  92. package/data/build/dist/client/features/assistant-configuration-view.js +133 -0
  93. package/data/build/dist/client/features/assistant-configuration-view.js.map +1 -0
  94. package/data/build/dist/client/features/assistant-debug-workbench.d.ts +4 -11
  95. package/data/build/dist/client/features/assistant-debug-workbench.d.ts.map +1 -1
  96. package/data/build/dist/client/features/assistant-debug-workbench.js +41 -68
  97. package/data/build/dist/client/features/assistant-debug-workbench.js.map +1 -1
  98. package/data/build/dist/client/features/assistant-display-store.d.ts +57 -0
  99. package/data/build/dist/client/features/assistant-display-store.d.ts.map +1 -0
  100. package/data/build/dist/client/features/assistant-display-store.js +189 -0
  101. package/data/build/dist/client/features/assistant-display-store.js.map +1 -0
  102. package/data/build/dist/client/features/assistant-prompt-editor.d.ts +12 -0
  103. package/data/build/dist/client/features/assistant-prompt-editor.d.ts.map +1 -0
  104. package/data/build/dist/client/features/assistant-prompt-editor.js +14 -0
  105. package/data/build/dist/client/features/assistant-prompt-editor.js.map +1 -0
  106. package/data/build/dist/client/features/assistant-view-loader.d.ts +17 -0
  107. package/data/build/dist/client/features/assistant-view-loader.d.ts.map +1 -0
  108. package/data/build/dist/client/features/assistant-view-loader.js +49 -0
  109. package/data/build/dist/client/features/assistant-view-loader.js.map +1 -0
  110. package/data/build/dist/client/features/assistant-workbench.d.ts +1 -60
  111. package/data/build/dist/client/features/assistant-workbench.d.ts.map +1 -1
  112. package/data/build/dist/client/features/assistant-workbench.js +41 -169
  113. package/data/build/dist/client/features/assistant-workbench.js.map +1 -1
  114. package/data/build/dist/client/features/cli-adapters.d.ts.map +1 -1
  115. package/data/build/dist/client/features/cli-adapters.js +44 -13
  116. package/data/build/dist/client/features/cli-adapters.js.map +1 -1
  117. package/data/build/dist/client/features/global-voice-assistant.d.ts.map +1 -1
  118. package/data/build/dist/client/features/global-voice-assistant.js +33 -27
  119. package/data/build/dist/client/features/global-voice-assistant.js.map +1 -1
  120. package/data/build/dist/client/features/peer-host.d.ts +2 -1
  121. package/data/build/dist/client/features/peer-host.d.ts.map +1 -1
  122. package/data/build/dist/client/features/peer-host.js +124 -58
  123. package/data/build/dist/client/features/peer-host.js.map +1 -1
  124. package/data/build/dist/client/features/workspace-session-enhancement.d.ts.map +1 -1
  125. package/data/build/dist/client/features/workspace-session-enhancement.js +37 -10
  126. package/data/build/dist/client/features/workspace-session-enhancement.js.map +1 -1
  127. package/data/build/dist/client/file-management-dom.d.ts +3 -1
  128. package/data/build/dist/client/file-management-dom.d.ts.map +1 -1
  129. package/data/build/dist/client/file-management-dom.js +85 -79
  130. package/data/build/dist/client/file-management-dom.js.map +1 -1
  131. package/data/build/dist/client/git-management.d.ts +1 -1
  132. package/data/build/dist/client/git-management.d.ts.map +1 -1
  133. package/data/build/dist/client/git-management.js +46 -27
  134. package/data/build/dist/client/git-management.js.map +1 -1
  135. package/data/build/dist/client/locale.d.ts.map +1 -1
  136. package/data/build/dist/client/locale.js +10 -0
  137. package/data/build/dist/client/locale.js.map +1 -1
  138. package/data/build/dist/client/locales/assistantAvatar.d.ts +1 -1
  139. package/data/build/dist/client/locales/assistantAvatar.js +2 -2
  140. package/data/build/dist/client/locales/assistantAvatar.js.map +1 -1
  141. package/data/build/dist/client/locales/fileWorkspace.d.ts.map +1 -1
  142. package/data/build/dist/client/locales/fileWorkspace.js +2 -0
  143. package/data/build/dist/client/locales/fileWorkspace.js.map +1 -1
  144. package/data/build/dist/client/locales/peerHost.d.ts.map +1 -1
  145. package/data/build/dist/client/locales/peerHost.js +4 -0
  146. package/data/build/dist/client/locales/peerHost.js.map +1 -1
  147. package/data/build/dist/client/locales/peerHostWorkspace.js +2 -2
  148. package/data/build/dist/client/locales/peerHostWorkspace.js.map +1 -1
  149. package/data/build/dist/client/locales/usage.d.ts.map +1 -1
  150. package/data/build/dist/client/locales/usage.js +4 -0
  151. package/data/build/dist/client/locales/usage.js.map +1 -1
  152. package/data/build/dist/client/model-catalog-cache.d.ts.map +1 -1
  153. package/data/build/dist/client/model-catalog-cache.js +9 -2
  154. package/data/build/dist/client/model-catalog-cache.js.map +1 -1
  155. package/data/build/dist/client/peer-host-management-api.d.ts +2 -2
  156. package/data/build/dist/client/peer-host-management-api.d.ts.map +1 -1
  157. package/data/build/dist/client/peer-host-management-api.js +8 -5
  158. package/data/build/dist/client/peer-host-management-api.js.map +1 -1
  159. package/data/build/dist/client/provider-icon-assets.js +5 -39
  160. package/data/build/dist/client/provider-icon-assets.js.map +1 -1
  161. package/data/build/dist/client/provider-icon-bridge.d.ts +6 -0
  162. package/data/build/dist/client/provider-icon-bridge.d.ts.map +1 -0
  163. package/data/build/dist/client/provider-icon-bridge.js +65 -0
  164. package/data/build/dist/client/provider-icon-bridge.js.map +1 -0
  165. package/data/build/dist/client/provider-icons.d.ts +1 -0
  166. package/data/build/dist/client/provider-icons.d.ts.map +1 -1
  167. package/data/build/dist/client/provider-icons.js +2 -1
  168. package/data/build/dist/client/provider-icons.js.map +1 -1
  169. package/data/build/dist/client/remote-web-context.d.ts +2 -0
  170. package/data/build/dist/client/remote-web-context.d.ts.map +1 -1
  171. package/data/build/dist/client/remote-web-context.js +50 -2
  172. package/data/build/dist/client/remote-web-context.js.map +1 -1
  173. package/data/build/dist/client/rpc-call.d.ts +4 -0
  174. package/data/build/dist/client/rpc-call.d.ts.map +1 -0
  175. package/data/build/dist/client/rpc-call.js +23 -0
  176. package/data/build/dist/client/rpc-call.js.map +1 -0
  177. package/data/build/dist/client/serial-polling.d.ts +15 -0
  178. package/data/build/dist/client/serial-polling.d.ts.map +1 -0
  179. package/data/build/dist/client/serial-polling.js +48 -0
  180. package/data/build/dist/client/serial-polling.js.map +1 -0
  181. package/data/build/dist/client/session-adapter-cache.d.ts.map +1 -1
  182. package/data/build/dist/client/session-adapter-cache.js +11 -1
  183. package/data/build/dist/client/session-adapter-cache.js.map +1 -1
  184. package/data/build/dist/client/settings-section.js +8 -2
  185. package/data/build/dist/client/settings-section.js.map +1 -1
  186. package/data/build/dist/client/sherpa-voice-adapter.d.ts.map +1 -1
  187. package/data/build/dist/client/sherpa-voice-adapter.js +8 -8
  188. package/data/build/dist/client/sherpa-voice-adapter.js.map +1 -1
  189. package/data/build/dist/client/subscription-slot.d.ts +11 -0
  190. package/data/build/dist/client/subscription-slot.d.ts.map +1 -1
  191. package/data/build/dist/client/subscription-slot.js +42 -15
  192. package/data/build/dist/client/subscription-slot.js.map +1 -1
  193. package/data/build/dist/client/terminal/xterm-engine.d.ts +4 -0
  194. package/data/build/dist/client/terminal/xterm-engine.d.ts.map +1 -0
  195. package/data/build/dist/client/terminal/xterm-engine.js +5 -0
  196. package/data/build/dist/client/terminal/xterm-engine.js.map +1 -0
  197. package/data/build/dist/client/terminal/xterm-view.d.ts.map +1 -1
  198. package/data/build/dist/client/terminal/xterm-view.js +33 -25
  199. package/data/build/dist/client/terminal/xterm-view.js.map +1 -1
  200. package/data/build/dist/host/avatar/temporary-previews.d.ts +3 -1
  201. package/data/build/dist/host/avatar/temporary-previews.d.ts.map +1 -1
  202. package/data/build/dist/host/avatar/temporary-previews.js +7 -2
  203. package/data/build/dist/host/avatar/temporary-previews.js.map +1 -1
  204. package/data/build/dist/host/cli-adapters/acp-cli-driver.d.ts +1 -1
  205. package/data/build/dist/host/cli-adapters/acp-cli-driver.d.ts.map +1 -1
  206. package/data/build/dist/host/cli-adapters/acp-cli-driver.js +3 -10
  207. package/data/build/dist/host/cli-adapters/acp-cli-driver.js.map +1 -1
  208. package/data/build/dist/host/cli-adapters/antigravity-driver.d.ts.map +1 -1
  209. package/data/build/dist/host/cli-adapters/antigravity-driver.js +2 -2
  210. package/data/build/dist/host/cli-adapters/antigravity-driver.js.map +1 -1
  211. package/data/build/dist/host/cli-adapters/antigravity-subscription.d.ts.map +1 -1
  212. package/data/build/dist/host/cli-adapters/antigravity-subscription.js +10 -10
  213. package/data/build/dist/host/cli-adapters/antigravity-subscription.js.map +1 -1
  214. package/data/build/dist/host/cli-adapters/binary-detection.d.ts +19 -0
  215. package/data/build/dist/host/cli-adapters/binary-detection.d.ts.map +1 -0
  216. package/data/build/dist/host/cli-adapters/binary-detection.js +71 -0
  217. package/data/build/dist/host/cli-adapters/binary-detection.js.map +1 -0
  218. package/data/build/dist/host/cli-adapters/claude-driver.d.ts +2 -0
  219. package/data/build/dist/host/cli-adapters/claude-driver.d.ts.map +1 -1
  220. package/data/build/dist/host/cli-adapters/claude-driver.js +11 -5
  221. package/data/build/dist/host/cli-adapters/claude-driver.js.map +1 -1
  222. package/data/build/dist/host/cli-adapters/claude-model-options.d.ts.map +1 -1
  223. package/data/build/dist/host/cli-adapters/claude-model-options.js +2 -1
  224. package/data/build/dist/host/cli-adapters/claude-model-options.js.map +1 -1
  225. package/data/build/dist/host/cli-adapters/claude-process.d.ts +7 -0
  226. package/data/build/dist/host/cli-adapters/claude-process.d.ts.map +1 -0
  227. package/data/build/dist/host/cli-adapters/claude-process.js +59 -0
  228. package/data/build/dist/host/cli-adapters/claude-process.js.map +1 -0
  229. package/data/build/dist/host/cli-adapters/codebuddy-driver.d.ts +3 -0
  230. package/data/build/dist/host/cli-adapters/codebuddy-driver.d.ts.map +1 -1
  231. package/data/build/dist/host/cli-adapters/codebuddy-driver.js +26 -12
  232. package/data/build/dist/host/cli-adapters/codebuddy-driver.js.map +1 -1
  233. package/data/build/dist/host/cli-adapters/command-code-driver.d.ts +0 -1
  234. package/data/build/dist/host/cli-adapters/command-code-driver.d.ts.map +1 -1
  235. package/data/build/dist/host/cli-adapters/command-code-driver.js +10 -32
  236. package/data/build/dist/host/cli-adapters/command-code-driver.js.map +1 -1
  237. package/data/build/dist/host/cli-adapters/cursor-driver.d.ts.map +1 -1
  238. package/data/build/dist/host/cli-adapters/cursor-driver.js +4 -3
  239. package/data/build/dist/host/cli-adapters/cursor-driver.js.map +1 -1
  240. package/data/build/dist/host/cli-adapters/delegate-dispatch.js +1 -1
  241. package/data/build/dist/host/cli-adapters/delegate-dispatch.js.map +1 -1
  242. package/data/build/dist/host/cli-adapters/delegation-mention-rewrite.d.ts +2 -0
  243. package/data/build/dist/host/cli-adapters/delegation-mention-rewrite.d.ts.map +1 -1
  244. package/data/build/dist/host/cli-adapters/delegation-mention-rewrite.js +5 -0
  245. package/data/build/dist/host/cli-adapters/delegation-mention-rewrite.js.map +1 -1
  246. package/data/build/dist/host/cli-adapters/desktop-app-runtime.d.ts.map +1 -1
  247. package/data/build/dist/host/cli-adapters/desktop-app-runtime.js +2 -4
  248. package/data/build/dist/host/cli-adapters/desktop-app-runtime.js.map +1 -1
  249. package/data/build/dist/host/cli-adapters/doubao-app.d.ts +27 -0
  250. package/data/build/dist/host/cli-adapters/doubao-app.d.ts.map +1 -0
  251. package/data/build/dist/host/cli-adapters/doubao-app.js +110 -0
  252. package/data/build/dist/host/cli-adapters/doubao-app.js.map +1 -0
  253. package/data/build/dist/host/cli-adapters/doubao-artifact-store.d.ts +16 -0
  254. package/data/build/dist/host/cli-adapters/doubao-artifact-store.d.ts.map +1 -0
  255. package/data/build/dist/host/cli-adapters/doubao-artifact-store.js +142 -0
  256. package/data/build/dist/host/cli-adapters/doubao-artifact-store.js.map +1 -0
  257. package/data/build/dist/host/cli-adapters/doubao-artifacts.d.ts +16 -0
  258. package/data/build/dist/host/cli-adapters/doubao-artifacts.d.ts.map +1 -0
  259. package/data/build/dist/host/cli-adapters/doubao-artifacts.js +34 -0
  260. package/data/build/dist/host/cli-adapters/doubao-artifacts.js.map +1 -0
  261. package/data/build/dist/host/cli-adapters/doubao-cdp.d.ts +49 -0
  262. package/data/build/dist/host/cli-adapters/doubao-cdp.d.ts.map +1 -0
  263. package/data/build/dist/host/cli-adapters/doubao-cdp.js +177 -0
  264. package/data/build/dist/host/cli-adapters/doubao-cdp.js.map +1 -0
  265. package/data/build/dist/host/cli-adapters/doubao-driver.d.ts +33 -0
  266. package/data/build/dist/host/cli-adapters/doubao-driver.d.ts.map +1 -0
  267. package/data/build/dist/host/cli-adapters/doubao-driver.js +291 -0
  268. package/data/build/dist/host/cli-adapters/doubao-driver.js.map +1 -0
  269. package/data/build/dist/host/cli-adapters/doubao-events.d.ts +21 -0
  270. package/data/build/dist/host/cli-adapters/doubao-events.d.ts.map +1 -0
  271. package/data/build/dist/host/cli-adapters/doubao-events.js +126 -0
  272. package/data/build/dist/host/cli-adapters/doubao-events.js.map +1 -0
  273. package/data/build/dist/host/cli-adapters/doubao-runtime.d.ts +6 -0
  274. package/data/build/dist/host/cli-adapters/doubao-runtime.d.ts.map +1 -0
  275. package/data/build/dist/host/cli-adapters/doubao-runtime.js +176 -0
  276. package/data/build/dist/host/cli-adapters/doubao-runtime.js.map +1 -0
  277. package/data/build/dist/host/cli-adapters/doubao-tools.d.ts +8 -0
  278. package/data/build/dist/host/cli-adapters/doubao-tools.d.ts.map +1 -0
  279. package/data/build/dist/host/cli-adapters/doubao-tools.js +139 -0
  280. package/data/build/dist/host/cli-adapters/doubao-tools.js.map +1 -0
  281. package/data/build/dist/host/cli-adapters/driver.d.ts +4 -3
  282. package/data/build/dist/host/cli-adapters/driver.d.ts.map +1 -1
  283. package/data/build/dist/host/cli-adapters/feature.d.ts.map +1 -1
  284. package/data/build/dist/host/cli-adapters/feature.js +30 -36
  285. package/data/build/dist/host/cli-adapters/feature.js.map +1 -1
  286. package/data/build/dist/host/cli-adapters/grok-driver.d.ts.map +1 -1
  287. package/data/build/dist/host/cli-adapters/grok-driver.js +2 -1
  288. package/data/build/dist/host/cli-adapters/grok-driver.js.map +1 -1
  289. package/data/build/dist/host/cli-adapters/json-rpc-process.d.ts.map +1 -1
  290. package/data/build/dist/host/cli-adapters/json-rpc-process.js +3 -1
  291. package/data/build/dist/host/cli-adapters/json-rpc-process.js.map +1 -1
  292. package/data/build/dist/host/cli-adapters/kimi-driver.d.ts.map +1 -1
  293. package/data/build/dist/host/cli-adapters/kimi-driver.js +4 -3
  294. package/data/build/dist/host/cli-adapters/kimi-driver.js.map +1 -1
  295. package/data/build/dist/host/cli-adapters/legacy-session-adapter.d.ts +2 -0
  296. package/data/build/dist/host/cli-adapters/legacy-session-adapter.d.ts.map +1 -1
  297. package/data/build/dist/host/cli-adapters/legacy-session-adapter.js +11 -0
  298. package/data/build/dist/host/cli-adapters/legacy-session-adapter.js.map +1 -1
  299. package/data/build/dist/host/cli-adapters/log-files.d.ts +3 -0
  300. package/data/build/dist/host/cli-adapters/log-files.d.ts.map +1 -0
  301. package/data/build/dist/host/cli-adapters/log-files.js +32 -0
  302. package/data/build/dist/host/cli-adapters/log-files.js.map +1 -0
  303. package/data/build/dist/host/cli-adapters/model-catalog.d.ts +2 -0
  304. package/data/build/dist/host/cli-adapters/model-catalog.d.ts.map +1 -1
  305. package/data/build/dist/host/cli-adapters/model-catalog.js +10 -0
  306. package/data/build/dist/host/cli-adapters/model-catalog.js.map +1 -1
  307. package/data/build/dist/host/cli-adapters/native-team-subagent.js +1 -1
  308. package/data/build/dist/host/cli-adapters/native-team-subagent.js.map +1 -1
  309. package/data/build/dist/host/cli-adapters/opencode-driver.d.ts +11 -0
  310. package/data/build/dist/host/cli-adapters/opencode-driver.d.ts.map +1 -1
  311. package/data/build/dist/host/cli-adapters/opencode-driver.js +132 -49
  312. package/data/build/dist/host/cli-adapters/opencode-driver.js.map +1 -1
  313. package/data/build/dist/host/cli-adapters/opencode-v2-protocol.d.ts +29 -0
  314. package/data/build/dist/host/cli-adapters/opencode-v2-protocol.d.ts.map +1 -0
  315. package/data/build/dist/host/cli-adapters/opencode-v2-protocol.js +471 -0
  316. package/data/build/dist/host/cli-adapters/opencode-v2-protocol.js.map +1 -0
  317. package/data/build/dist/host/cli-adapters/pi-driver.d.ts.map +1 -1
  318. package/data/build/dist/host/cli-adapters/pi-driver.js +2 -1
  319. package/data/build/dist/host/cli-adapters/pi-driver.js.map +1 -1
  320. package/data/build/dist/host/cli-adapters/process-utils.d.ts +12 -4
  321. package/data/build/dist/host/cli-adapters/process-utils.d.ts.map +1 -1
  322. package/data/build/dist/host/cli-adapters/process-utils.js +151 -17
  323. package/data/build/dist/host/cli-adapters/process-utils.js.map +1 -1
  324. package/data/build/dist/host/cli-adapters/qoder-driver.d.ts.map +1 -1
  325. package/data/build/dist/host/cli-adapters/qoder-driver.js +63 -100
  326. package/data/build/dist/host/cli-adapters/qoder-driver.js.map +1 -1
  327. package/data/build/dist/host/cli-adapters/qoder-subscription.d.ts +6 -1
  328. package/data/build/dist/host/cli-adapters/qoder-subscription.d.ts.map +1 -1
  329. package/data/build/dist/host/cli-adapters/qoder-subscription.js +37 -10
  330. package/data/build/dist/host/cli-adapters/qoder-subscription.js.map +1 -1
  331. package/data/build/dist/host/cli-adapters/registry.d.ts +13 -21
  332. package/data/build/dist/host/cli-adapters/registry.d.ts.map +1 -1
  333. package/data/build/dist/host/cli-adapters/registry.js +102 -131
  334. package/data/build/dist/host/cli-adapters/registry.js.map +1 -1
  335. package/data/build/dist/host/cli-adapters/rpc-driver-utils.d.ts +2 -10
  336. package/data/build/dist/host/cli-adapters/rpc-driver-utils.d.ts.map +1 -1
  337. package/data/build/dist/host/cli-adapters/rpc-driver-utils.js +1 -28
  338. package/data/build/dist/host/cli-adapters/rpc-driver-utils.js.map +1 -1
  339. package/data/build/dist/host/cli-adapters/session-store.d.ts +5 -1
  340. package/data/build/dist/host/cli-adapters/session-store.d.ts.map +1 -1
  341. package/data/build/dist/host/cli-adapters/session-store.js +68 -11
  342. package/data/build/dist/host/cli-adapters/session-store.js.map +1 -1
  343. package/data/build/dist/host/cli-adapters/standard-stream-driver.d.ts +3 -3
  344. package/data/build/dist/host/cli-adapters/standard-stream-driver.d.ts.map +1 -1
  345. package/data/build/dist/host/cli-adapters/standard-stream-driver.js +14 -38
  346. package/data/build/dist/host/cli-adapters/standard-stream-driver.js.map +1 -1
  347. package/data/build/dist/host/cli-adapters/windows-command-environment.d.ts +12 -0
  348. package/data/build/dist/host/cli-adapters/windows-command-environment.d.ts.map +1 -0
  349. package/data/build/dist/host/cli-adapters/windows-command-environment.js +53 -0
  350. package/data/build/dist/host/cli-adapters/windows-command-environment.js.map +1 -0
  351. package/data/build/dist/host/cli-bridge/dispatch.js +1 -1
  352. package/data/build/dist/host/cli-bridge/dispatch.js.map +1 -1
  353. package/data/build/dist/host/debug.d.ts.map +1 -1
  354. package/data/build/dist/host/debug.js +5 -4
  355. package/data/build/dist/host/debug.js.map +1 -1
  356. package/data/build/dist/host/dsh-runtime-version.d.ts +1 -1
  357. package/data/build/dist/host/dsh-runtime-version.d.ts.map +1 -1
  358. package/data/build/dist/host/dsh-runtime-version.js +22 -17
  359. package/data/build/dist/host/dsh-runtime-version.js.map +1 -1
  360. package/data/build/dist/host/features/assistant-avatar-runtime.d.ts.map +1 -1
  361. package/data/build/dist/host/features/assistant-avatar-runtime.js +43 -19
  362. package/data/build/dist/host/features/assistant-avatar-runtime.js.map +1 -1
  363. package/data/build/dist/host/features/assistant-background.d.ts +44 -0
  364. package/data/build/dist/host/features/assistant-background.d.ts.map +1 -0
  365. package/data/build/dist/host/features/assistant-background.js +116 -0
  366. package/data/build/dist/host/features/assistant-background.js.map +1 -0
  367. package/data/build/dist/host/features/assistant-index-updates.d.ts +5 -0
  368. package/data/build/dist/host/features/assistant-index-updates.d.ts.map +1 -1
  369. package/data/build/dist/host/features/assistant-index-updates.js +29 -6
  370. package/data/build/dist/host/features/assistant-index-updates.js.map +1 -1
  371. package/data/build/dist/host/features/assistant-source-cache.d.ts +12 -0
  372. package/data/build/dist/host/features/assistant-source-cache.d.ts.map +1 -0
  373. package/data/build/dist/host/features/assistant-source-cache.js +58 -0
  374. package/data/build/dist/host/features/assistant-source-cache.js.map +1 -0
  375. package/data/build/dist/host/features/global-voice-coordinator.d.ts.map +1 -1
  376. package/data/build/dist/host/features/global-voice-coordinator.js +15 -10
  377. package/data/build/dist/host/features/global-voice-coordinator.js.map +1 -1
  378. package/data/build/dist/host/features/global-voice-rpc.d.ts.map +1 -1
  379. package/data/build/dist/host/features/global-voice-rpc.js +288 -114
  380. package/data/build/dist/host/features/global-voice-rpc.js.map +1 -1
  381. package/data/build/dist/host/features/peer-host.d.ts.map +1 -1
  382. package/data/build/dist/host/features/peer-host.js +61 -21
  383. package/data/build/dist/host/features/peer-host.js.map +1 -1
  384. package/data/build/dist/host/features/sherpa-voice-worker.d.ts +18 -0
  385. package/data/build/dist/host/features/sherpa-voice-worker.d.ts.map +1 -0
  386. package/data/build/dist/host/features/sherpa-voice-worker.js +40 -0
  387. package/data/build/dist/host/features/sherpa-voice-worker.js.map +1 -0
  388. package/data/build/dist/host/features/sherpa-worker-runtime.d.ts +41 -0
  389. package/data/build/dist/host/features/sherpa-worker-runtime.d.ts.map +1 -0
  390. package/data/build/dist/host/features/sherpa-worker-runtime.js +200 -0
  391. package/data/build/dist/host/features/sherpa-worker-runtime.js.map +1 -0
  392. package/data/build/dist/host/features/types.d.ts +6 -4
  393. package/data/build/dist/host/features/types.d.ts.map +1 -1
  394. package/data/build/dist/host/index.d.ts +1 -1
  395. package/data/build/dist/host/index.d.ts.map +1 -1
  396. package/data/build/dist/host/index.js +31 -21
  397. package/data/build/dist/host/index.js.map +1 -1
  398. package/data/build/dist/host/lan-access-dsh.d.ts.map +1 -1
  399. package/data/build/dist/host/lan-access-dsh.js +5 -22
  400. package/data/build/dist/host/lan-access-dsh.js.map +1 -1
  401. package/data/build/dist/host/modules/peer-host/host-api-proxy-service.d.ts +6 -46
  402. package/data/build/dist/host/modules/peer-host/host-api-proxy-service.d.ts.map +1 -1
  403. package/data/build/dist/host/modules/peer-host/host-api-proxy-service.js +48 -28
  404. package/data/build/dist/host/modules/peer-host/host-api-proxy-service.js.map +1 -1
  405. package/data/build/dist/host/modules/peer-host/peer-host-diagnostics.d.ts.map +1 -1
  406. package/data/build/dist/host/modules/peer-host/peer-host-diagnostics.js +1 -0
  407. package/data/build/dist/host/modules/peer-host/peer-host-diagnostics.js.map +1 -1
  408. package/data/build/dist/host/modules/peer-host/peer-host-handshake.d.ts.map +1 -1
  409. package/data/build/dist/host/modules/peer-host/peer-host-handshake.js +4 -1
  410. package/data/build/dist/host/modules/peer-host/peer-host-handshake.js.map +1 -1
  411. package/data/build/dist/host/modules/peer-host/peer-host-session.d.ts +7 -1
  412. package/data/build/dist/host/modules/peer-host/peer-host-session.d.ts.map +1 -1
  413. package/data/build/dist/host/modules/peer-host/peer-host-session.js +40 -13
  414. package/data/build/dist/host/modules/peer-host/peer-host-session.js.map +1 -1
  415. package/data/build/dist/host/provider-icon-assets.d.ts +5 -0
  416. package/data/build/dist/host/provider-icon-assets.d.ts.map +1 -0
  417. package/data/build/dist/host/provider-icon-assets.js +61 -0
  418. package/data/build/dist/host/provider-icon-assets.js.map +1 -0
  419. package/data/build/dist/host/rpc.js +2 -2
  420. package/data/build/dist/host/rpc.js.map +1 -1
  421. package/data/build/dist/host/session-migration-repair.d.ts +4 -0
  422. package/data/build/dist/host/session-migration-repair.d.ts.map +1 -1
  423. package/data/build/dist/host/session-migration-repair.js +75 -2
  424. package/data/build/dist/host/session-migration-repair.js.map +1 -1
  425. package/data/build/dist/host/terminal/backends/tmux-backend.d.ts +1 -1
  426. package/data/build/dist/host/terminal/backends/tmux-backend.d.ts.map +1 -1
  427. package/data/build/dist/host/terminal/backends/tmux-backend.js +15 -14
  428. package/data/build/dist/host/terminal/backends/tmux-backend.js.map +1 -1
  429. package/data/build/dist/shared/assistant-avatar-engine.d.ts +5 -0
  430. package/data/build/dist/shared/assistant-avatar-engine.d.ts.map +1 -1
  431. package/data/build/dist/shared/assistant-avatar-engine.js +14 -0
  432. package/data/build/dist/shared/assistant-avatar-engine.js.map +1 -1
  433. package/data/build/dist/shared/contracts/cli-adapter.d.ts +6 -0
  434. package/data/build/dist/shared/contracts/cli-adapter.d.ts.map +1 -1
  435. package/data/build/dist/shared/contracts/errors.d.ts +1 -0
  436. package/data/build/dist/shared/contracts/errors.d.ts.map +1 -1
  437. package/data/build/dist/shared/contracts/errors.js +1 -0
  438. package/data/build/dist/shared/contracts/errors.js.map +1 -1
  439. package/data/build/dist/shared/contracts/peer-host.d.ts +1 -0
  440. package/data/build/dist/shared/contracts/peer-host.d.ts.map +1 -1
  441. package/data/build/dist/shared/contracts/peer-host.js +1 -0
  442. package/data/build/dist/shared/contracts/peer-host.js.map +1 -1
  443. package/data/build/dist/shared/contracts/version.d.ts +3 -1
  444. package/data/build/dist/shared/contracts/version.d.ts.map +1 -1
  445. package/data/build/dist/shared/contracts/version.js +20 -7
  446. package/data/build/dist/shared/contracts/version.js.map +1 -1
  447. package/data/build/dist/shared/peer-host-http-routes.d.ts +62 -0
  448. package/data/build/dist/shared/peer-host-http-routes.d.ts.map +1 -0
  449. package/data/build/dist/shared/peer-host-http-routes.js +31 -0
  450. package/data/build/dist/shared/peer-host-http-routes.js.map +1 -0
  451. package/data/build/dist/shared/provider-icon-resources.d.ts +4 -0
  452. package/data/build/dist/shared/provider-icon-resources.d.ts.map +1 -0
  453. package/data/build/dist/shared/provider-icon-resources.js +24 -0
  454. package/data/build/dist/shared/provider-icon-resources.js.map +1 -0
  455. package/package.json +2 -2
  456. package/profile/README.md +2 -2
  457. package/profile/package.json +2 -2
  458. package/profile/version.json +1 -1
  459. package/version.json +1 -1
package/README.en.md CHANGED
@@ -1,8 +1,8 @@
1
1
  <div align="center">
2
2
 
3
- # Codingns4DSH
3
+ # CodingNS for DeepSeek Harness
4
4
 
5
- **External Agent CLIs, persistent terminals, workspace debug and remote access — inside DSH's own UI.**
5
+ **Use multiple coding Agents, manage projects, talk with your assistant, and access your DSH workbench remotely.**
6
6
 
7
7
  [![npm version](https://img.shields.io/npm/v/%40jingyi0605%2Fcodingns4dsh?logo=npm)](https://www.npmjs.com/package/@jingyi0605/codingns4dsh)
8
8
  [![DSH compatibility](https://img.shields.io/badge/DSH-0.2.1--alpha.1-4D6BFE)](https://github.com/deepseek-ai/deepseek-harness)
@@ -11,18 +11,19 @@
11
11
 
12
12
  [简体中文](README.md) · **English**
13
13
 
14
- **Current release `@jingyi0605/codingns4dsh@0.2.1-beta.4`** · DSH **`>=0.2.0-rc.2 <=0.2.1-alpha.1`** (tested with `0.2.1-alpha.1`) · Node **`>= 22.19`** · macOS / Linux / Windows
14
+ **Current release `@jingyi0605/codingns4dsh@0.2.1-beta.6`** · DSH **`>=0.2.0-rc.2 <=0.2.1-alpha.1`** (tested with `0.2.1-alpha.1`) · Node **`>= 22.19`** · macOS / Linux / Windows
15
15
 
16
- **[GitHub](https://github.com/jingyi0605/Codingns4DSH)** · **[npm](https://www.npmjs.com/package/@jingyi0605/codingns4dsh)** · **QQ group 1092985965**
16
+ **[GitHub](https://github.com/jingyi0605/Codingns4DSH)** · **[npm](https://www.npmjs.com/package/@jingyi0605/codingns4dsh)** · **QQ group 1092985965** · **[WeChat / QQ QR codes](#community)**
17
17
 
18
18
  <p>
19
19
  <a href="#interface-preview">Preview</a> ·
20
20
  <a href="#what-is-codingns4dsh">What it is</a> ·
21
21
  <a href="#supported-agents">Agents</a> ·
22
- <a href="#feature-details">Features</a> ·
22
+ <a href="#features">Features</a> ·
23
23
  <a href="#installation">Install</a> ·
24
24
  <a href="#first-run">First run</a> ·
25
25
  <a href="#troubleshooting">Troubleshooting</a> ·
26
+ <a href="#community">Community</a> ·
26
27
  <a href="#development">Development</a> ·
27
28
  <a href="#acknowledgements">Acknowledgements</a> ·
28
29
  <a href="#license">License</a>
@@ -42,71 +43,62 @@ The CodingNS workbench brings the conversation, Agent picker and Git sidebar tog
42
43
 
43
44
  ## What is Codingns4DSH
44
45
 
45
- **DSH (DeepSeek Harness)** is a coding-agent harness — a CLI plus Web UI that runs an agent loop inside your workspace.
46
+ **Codingns4DSH** is a plugin for [DSH (DeepSeek Harness)](https://github.com/deepseek-ai/deepseek-harness) that brings coding Agents, project tools and a personal assistant into one workbench. Manage all modules in **Settings → Codingns4DSH**.
46
47
 
47
- **Codingns4DSH is a DSH plugin bundle** (Host + browser layers) adding eleven modules, all configured under **Settings → Codingns4DSH**.
48
-
49
- > Naming: this plugin is **Codingns4DSH** (npm package `@jingyi0605/codingns4dsh`; its settings entry is labelled Codingns4DSH). **Codingns4DSH** on its own refers to the platform service that provides the Control API, accounts and the relay tunnel.
50
-
51
- | Module | What it does | Default |
48
+ | Module | What you can do | Default |
52
49
  | --- | --- | :---: |
53
- | **External Agent integration** | Run installed Agent CLIs as native DSH sessions: streaming, tools, approvals, questions, usage, thinking levels | On |
54
- | **Workspace session enhancement** | Agent logos on session rows, archived-session entry, subscription/usage readout | Off |
55
- | **Mobile access enhancements** | On phones or narrow viewports, collapse the main sidebar, turn the settings navigation into an icon rail, support horizontal swipes, Android vibration and LAN PWA notifications | On |
56
- | **Terminal enhancement** | Persistent terminals plus shell, theme, font, cursor and scrollback settings | Off · restart |
57
- | **LAN access to DSH** | Listener forwarding a LAN address to the local DSH Web port, with a status indicator and one-click copy of a usable access URL | Always on |
58
- | **Login protection** | One optional local account guarding LAN **and** relay access; loopback always allowed | Always on (card) |
59
- | **Relay access service** | **Your DSH Web from anywhere on the internet**, end-to-end encrypted | Off |
60
- | **Workspace debug** | Per-workspace launch profiles, port checks, HTTP service proxy | On |
61
- | **Git repository management** | View changes, stage files, commit and browse Git history in the right sidebar | On |
62
- | **File management enhancement** | Create, rename, move, copy and delete files/directories, with code and script detection | Off |
63
- | **PeerHost workbench** | Proxy other handshaken DSH Hosts and aggregate workspaces, sessions and scoped tools | Off |
64
-
65
- Nothing native is replaced — conversations, sessions, sidebar, settings and approvals stay DSH's own.
66
-
67
- Everything runs on the **Host** (your machine): Agents, terminals, files, LAN/relay listeners; the browser is only a view. Agent CLIs run as DSH child processes with their own credentials and providers — model traffic never goes through Codingns4DSH. Remote access is available through optional modules.
68
-
69
- Notes: the sidebar terminal exists as soon as the plugin is installed — **Terminal enhancement** only switches it to the persistent backend (tmux on macOS/Linux, ConPTY on Windows) and applies on restart; the 调试 card is currently Chinese-only.
50
+ | **External Agent integration** | Use coding Agents in DSH, switch models and follow their work | On |
51
+ | **Workspace session enhancement** | Identify Agents, manage archived sessions and view subscription usage | Off |
52
+ | **Mobile access enhancements** | Use a mobile layout, sidebar gestures, home-screen access and notifications | On |
53
+ | **Terminal enhancement** | Use persistent terminals and customize their appearance | Off |
54
+ | **LAN access to DSH** | Open your workbench from other devices on the same network | Always available |
55
+ | **Login protection** | Require a login for LAN and relay access | Off |
56
+ | **Relay access service** | Access DSH over the internet with end-to-end encryption | Off |
57
+ | **Workspace debug** | Save launch profiles, manage processes, check ports and access services | On |
58
+ | **Git repository management** | Review changes, stage, commit, switch branches and browse history | On |
59
+ | **File management enhancement** | Create, edit, rename, move, copy and delete files | Off |
60
+ | **PeerHost workbench** | Use other DSH Hosts' workspaces and sessions in your current workbench | Off |
61
+ | **Global assistant (experimental)** | Chat by text or voice, follow project progress and customize your assistant | Off |
62
+
63
+ Agents, terminals and project files run on the computer hosting DSH (the Host). The browser provides a shared interface, with remote access available when needed.
70
64
 
71
65
  ---
72
66
 
73
67
  ## Supported Agents
74
68
 
75
- Detected on the Host by command name; version and models come from the CLI itself. Detected Agents are enabled by default and can be toggled individually. The built-in **DeepSeek Harness** Agent is always available.
76
-
77
- | Agent | id | Command | Protocol | Capabilities | Notes |
78
- | --- | --- | --- | --- | --- | --- |
79
- | Command Code | `command-code` | `command-code`, `commandcode`, `cmdc` | CLI + ACP | models, streaming, resume, interrupt, tools, thinking, usage, approvals, questions | The formal Host runtime uses `cmd acp`; DSH permissions map to `--plan`, `--permission-mode accept-edits`, or `--yolo`, and questions return through Command Code's `session/request_permission` extension |
80
- | Claude Code | `claude-code` | `claude` | stream-json | models, streaming, resume, interrupt, tools, thinking, usage, approvals, questions | `can_use_tool` approvals and `AskUserQuestion` |
81
- | Kimi CLI | `kimi` | `kimi`, `kimi-cli` | stream-json | all of the above + approvals, questions, steering | — |
82
- | Gemini CLI | `gemini` | `gemini` | ACP | models, streaming, resume, interrupt, tools, thinking, usage, approvals, questions | ACP permissions and form elicitation |
83
- | Pi Agent | `pi` | `pi`, `pi-agent` | JSON-RPC | models, streaming, resume, interrupt, tools, thinking, usage, steering | No verifiable DSH approval/question response wire in the current protocol |
84
- | Codex | `codex` | `codex` | JSON-RPC (app-server) | all + approvals, questions, steering | app-server enables `request_user_input`; DSH renders the native question panel |
85
- | OpenCode | `opencode` | `opencode`, or `OPENCODE_SERVER_URL` (default `http://127.0.0.1:4096`) | HTTP + SSE | all + approvals, questions | — |
86
- | Grok Build | `grok` | `grok`, `grok-build` | ACP | models, streaming, tools, thinking, usage, approvals, questions | ACP permissions plus Grok's private `x.ai/ask_user_question` structured question method |
87
- | MiniMax Code | `mcode` | `mcode` | ACP / stream-json | models, streaming, resume, interrupt, tools, thinking, usage, approvals, questions | Interactive requests use ACP; the explicit-effort `exec` path has no interactive response wire |
88
- | ZCode | `zcode` | `zcode`, bundled desktop runtime | JSON-RPC bare envelope | models, streaming, resume, interrupt, usage | No verifiable DSH approval/question response wire |
89
- | CodeBuddy (auto-detects CN/international) | `codebuddy` | `codebuddy`, `codebuddy-code`, `cbc`, and Windows `.cmd` entry points; region selected from environment and auth domain | ACP (`--acp`) | models, streaming, resume, interrupt, tools, thinking, usage, approvals, questions | Supports stdio ACP and HTTP sidecar ACP |
90
- | WorkBuddy | `workbuddy` | `codebuddy` bundled in the WorkBuddy desktop app | ACP (`--acp`) | models, streaming, resume, interrupt, tools, thinking, approvals, questions | Permissions and form elicitation use the HTTP ACP sidecar |
91
- | Cursor CLI | `cursor-cli` | `cursor-agent`, `agent` | ACP (`acp`) | models, streaming, resume, interrupt, tools, thinking, approvals, questions | Standard ACP permissions and form elicitation |
92
- | Kiro CLI | `kiro-cli` | `kiro-cli` | ACP (`acp --agent-engine v3 --auth-method cli`) | models, streaming, resume, interrupt, tools, thinking, approvals, questions | Standard ACP permissions and form elicitation |
93
- | Qoder | `qoder` | `qoder`, `qodercli` | ACP (`--acp`) | models, streaming, resume, interrupt, tools, thinking, approvals, questions | Standard ACP permissions and form elicitation |
94
- | Qoder CN | `qoder-cn` | `qodercn`, `qoderclicn` | ACP (`--acp`) | models, streaming, resume, interrupt, tools, thinking, approvals, questions | Standard ACP permissions and form elicitation |
95
- | Antigravity | `antigravity` | `agy` | stream-json (stdin NDJSON) | models, streaming, resume, interrupt, tools, thinking | Permission state maps to CLI safety modes; no interactive approval/question wire |
96
-
97
- **models** model list · **streaming** live output · **resume** continue after restart · **interrupt** cancel a turn · **tools** tool calls in the conversation · **thinking** reasoning/effort · **usage** token or subscription limits · **approvals / questions** native DSH interactions · **steering** inject a message mid-turn.
98
-
99
- Unlisted capabilities are unsupported by that CLI or version. Install and log in to each Agent outside DSH; Codingns4DSH never stores Agent credentials.
100
-
101
- Approvals and questions are rendered by DSH's native components. The Web Client Bundle must inject `@deepseek-ai/dsh-client-ui-user-questions`; otherwise the Host may receive a question event without having a question panel to mount. Adapters with an interactive response wire normalize Provider requests into `permission-request` or `question-request` events, pass them to the native approval/question components, then send the typed answer back with the Provider's original request ID. ACP adapters use the standard `session/request_permission` and `elicitation/create` form requests; Grok Build's `grok_build/ask_user_question` tool call returns through the private `x.ai/ask_user_question` method with an `outcome`; Command Code's `ask_user_question` also uses `session/request_permission`, distinguished by `toolCall.kind=other` and `toolCall.rawInput.question/options`. Fixed choices are returned using the original `optionId`; free text is carried in ACP `_meta["codingns/questionAnswer"]` and returned to the Command Code tool through a Node loader that only affects the child process memory and does not modify the user's installed package. The Codex app-server explicitly enables `default_mode_request_user_input` so it emits `item/tool/requestUserInput` requests. URL elicitation requires a browser security-consent flow and is not advertised. Antigravity only maps DSH permission state to CLI safety modes.
69
+ Install and sign in to an Agent with its own tools, and Codingns4DSH will detect it. The built-in **DeepSeek Harness** Agent remains available. Choose models and view streaming replies in one interface, with session resume, tool calls and thinking controls where supported.
70
+
71
+ The table highlights selected capabilities; availability depends on the Agent and its version. Skills are reusable workflows, and steering lets you add a message while an Agent is working.
72
+
73
+ | Agent | Key capabilities | Notes |
74
+ | --- | --- | --- |
75
+ | **Command Code** | Skills, approvals, questions, usage | Uses DSH permission settings and the native question panel |
76
+ | **Claude Code** | Skills, approvals, questions, usage | Supports native skill discovery and invocation |
77
+ | **Kimi CLI** | Approvals, questions, steering, usage | — |
78
+ | **Gemini CLI** | Approvals, questions, usage | Supports native approvals and form questions |
79
+ | **Pi Agent** | Steering, thinking controls, usage | DSH approval and question responses remain unverified in the current protocol |
80
+ | **Codex** | Approvals, questions, steering, usage | Questions appear in DSH's native question panel |
81
+ | **OpenCode** | Skills, approvals, questions, usage | Supports a local CLI or existing server, plus native skills |
82
+ | **Grok Build** | Skills, approvals, questions, usage | Supports native skill discovery and structured questions |
83
+ | **MiniMax Code** | Approvals, questions, usage | Default integration supports interaction; explicit-effort execution does not return interactive responses.<br>Upstream contributor: [chenjunyi000](https://github.com/chenjunyi000)<br>PRs [#6](https://github.com/jingyi0605/Codingns4DSH/pull/6), [#7](https://github.com/jingyi0605/Codingns4DSH/pull/7) |
84
+ | **ZCode** | Model selection, session resume, usage | Uses the CLI or the desktop app's bundled runtime.<br>Upstream contributor: [chenjunyi000](https://github.com/chenjunyi000)<br>PRs [#6](https://github.com/jingyi0605/Codingns4DSH/pull/6), [#7](https://github.com/jingyi0605/Codingns4DSH/pull/7) |
85
+ | **CodeBuddy** | Approvals, questions, usage | Automatically detects CN/international editions.<br>CodexHost contributor: [mouzhi](https://github.com/mouzhi)<br>Initial integration: [f30b000](https://github.com/BytePioneer-AI/codex-host/commit/f30b000f88950c40844b071eec2f6f385c6bcb49) |
86
+ | **WorkBuddy** | Approvals, questions, thinking controls | Uses the WorkBuddy desktop app's bundled runtime.<br>CodexHost contributor: [BytePioneer-AI (ChongWen)](https://github.com/BytePioneer-AI)<br>Initial integration: [6e9f365](https://github.com/BytePioneer-AI/codex-host/commit/6e9f365e2bf8ac61716f8250475530ae790f2d2f) |
87
+ | **Cursor CLI** | Approvals, questions, thinking controls | CodexHost contributor: [mouzhi](https://github.com/mouzhi)<br>Initial integration: [ad6ba8e](https://github.com/BytePioneer-AI/codex-host/commit/ad6ba8e04d294c473d2dcad99880496ff39c1f7e) |
88
+ | **Kiro CLI** | Approvals, questions, thinking controls | CodexHost contributor: [gy212](https://github.com/gy212)<br>Initial integration: [79675cd](https://github.com/BytePioneer-AI/codex-host/commit/79675cdbfdc042eb37a849c3eb1539e9efc40a0d) |
89
+ | **Qoder** | Approvals, questions, thinking controls | CodexHost contributors: [gy212](https://github.com/gy212), [BytePioneer-AI (ChongWen)](https://github.com/BytePioneer-AI)<br>PR #289 merge: [8926130](https://github.com/BytePioneer-AI/codex-host/commit/8926130af1426a467747b66d8d2dbf68f7764a7b) |
90
+ | **Qoder CN** | Approvals, questions, thinking controls | CodexHost contributors: [gy212](https://github.com/gy212), [BytePioneer-AI (ChongWen)](https://github.com/BytePioneer-AI)<br>PR #289 merge: [8926130](https://github.com/BytePioneer-AI/codex-host/commit/8926130af1426a467747b66d8d2dbf68f7764a7b) |
91
+ | **Antigravity** | Session resume, tool calls, thinking controls | Permission settings select safety modes; no interactive approvals or questions.<br>CodexHost contributor: [gy212](https://github.com/gy212)<br>Initial integration: [ed4e785](https://github.com/BytePioneer-AI/codex-host/commit/ed4e785116642eafc08e4186e92e83f3816c7765) |
92
+
93
+ Each Agent handles its own installation and login. See the [Agent adapter documentation](specs/spec007.1-外部Agent适配器扩展/README.md) (Chinese) for integration details.
102
94
 
103
95
  ---
104
96
 
105
- ## Feature Details
97
+ ## Features
106
98
 
107
99
  ### External Agent Integration
108
100
 
109
- After you pick an Agent and a model, Codingns4DSH starts (or resumes) that CLI as a DSH child process and projects its event stream into a native session; the model and thinking effort are remembered per Agent.
101
+ Choose an Agent and model to start coding. Replies, tool calls, approvals and questions appear directly in the DSH conversation. Model and thinking preferences are remembered per Agent, and you can delegate tasks to other connected Agents.
110
102
 
111
103
  <div align="center">
112
104
  <table>
@@ -117,13 +109,9 @@ After you pick an Agent and a model, Codingns4DSH starts (or resumes) that CLI a
117
109
  </table>
118
110
  </div>
119
111
 
120
- The model list is read from each CLI and can be switched at any time; the composer button also shows the current model and thinking effort.
121
-
122
- External Agents assemble their own requests, so the context panel's heuristic composition never matches the provider-reported usage; those sessions keep only the occupancy percentage and totals, without the System / Tools / Messages breakdown.
123
-
124
112
  ### Session Enhancement and Usage
125
113
 
126
- Session rows show the Agent logo and archive entry, and the composer dock shows subscription or upstream usage for Agents whose limits can be read (cache hit rate, per-model stats and cost included). The "Settings" button next to "Show subscription and usage" adjusts the query timeout (10 seconds by default, applied to every Agent) and the auto refresh interval (5 minutes by default, 0 disables automatic refresh); switching back to the same Agent within the interval reuses the previous result instead of querying upstream again.
114
+ Identify sessions by Agent icons, access archived conversations, and hide or restore workspaces. Supported Agents can show subscription allowances, reset times, usage and costs.
127
115
 
128
116
  <div align="center">
129
117
  <table>
@@ -134,11 +122,27 @@ Session rows show the Agent logo and archive entry, and the composer dock shows
134
122
  </table>
135
123
  </div>
136
124
 
137
- Usage comes from the Agent's own quota API or a configured upstream source; it is read on the Host and never stored in the browser.
125
+ ### Global Assistant (Experimental)
126
+
127
+ Create a personal assistant with your choice of name, personality, model and avatar. Open the same workbench from the sidebar or floating avatar.
128
+
129
+ - **Continuous conversations**: text and live voice share one history, so you can switch input methods and keep talking.
130
+ - **Project follow-up**: check progress in selected projects, look up sessions and send follow-up messages at your request.
131
+ - **Web search**: use your configured DSH search service for weather, news and other current information.
132
+ - **Attachments**: ask about images and text files; image understanding requires a vision-capable model.
133
+ - **Avatars and voices**: use built-in or third-party avatars, customize portraits and voices, and keep calls in a floating view with captions and mute controls.
134
+
135
+ Browser speech playback is the default, with local MOSS speech available as an option. The assistant handles conversation and coordination; it does not execute commands or edit code directly.
136
+
137
+ ### Terminals and Log Sharing
138
+
139
+ The sidebar terminal is available after installation. Enable **Terminal enhancement** and restart DSH for persistent terminals. Terminals are shared within a workspace and retain their state when switching sessions.
140
+
141
+ Attach terminal output or selected logs to a new or existing conversation to ask an Agent for help.
138
142
 
139
143
  ### Workspace Debug
140
144
 
141
- Each workspace keeps its own launch profiles (`<workspace>/.codingns/debug.json`): command, working directory, environment, shell and an optional port — start, check the port, kill the process or stop it. An optional reverse proxy exposes the port through DSH (HTTP only for now).
145
+ Save launch profiles for each project, start or stop processes, check port status and access project HTTP services through DSH. The debug panel currently has a Chinese-only interface.
142
146
 
143
147
  <div align="center">
144
148
  <table>
@@ -149,23 +153,25 @@ Each workspace keeps its own launch profiles (`<workspace>/.codingns/debug.json`
149
153
  </table>
150
154
  </div>
151
155
 
152
- The panel shows live port state and PID, and issues an unguessable proxy URL per running instance.
153
-
154
156
  ### Git Repository Management
155
157
 
156
- The Git panel is opened from DSH's native right sidebar and persists per workspace across sessions. It can initialize a repository, show staged and unstaged files, stage or unstage paths, discard changes, create commits, switch branches and browse commit history. Disabling the module removes its sidebar tab and Host Git RPC without affecting other modules.
158
+ Initialize repositories, review changes, stage or unstage files, commit, switch branches and browse history from the right sidebar.
157
159
 
158
160
  ### File Management Enhancement
159
161
 
160
- File management enhancement adds common file operations to DSH's native file sidebar: create files and directories, rename, move, copy and delete entries, with code and script type detection for the editor entry point. Workspace path validation rejects paths outside the active workspace; disabling the module removes its sidebar entry and Host RPC.
162
+ Create, edit, rename, move, copy or delete files and directories directly in the file sidebar.
161
163
 
162
164
  ### PeerHost Workbench
163
165
 
164
- PeerHost proxies other DSH Hosts without replacing the current logged-in Host. It can add LAN peers, persist target configuration and login state, and route workspaces, sessions, chat input, live events, files, Git, terminals and right-sidebar tools through an explicit HostScope. A failing peer does not block the local Host or other peers. Unsupported native navigation surfaces report `degraded` or `unsupported` instead of creating an iframe or pretending to be a native three-column view.
166
+ Add other DSH Hosts on your LAN to access their workspaces, sessions, files, Git and terminals from the current workbench. Hosts remain independent, so a disconnected peer does not interrupt local work. PeerHost aggregation through the relay service is not currently supported.
167
+
168
+ ### Mobile Access
169
+
170
+ Read conversations, send messages and use workspace tools on your phone. Swipe to open or close sidebars, add the app to your home screen, and use notifications in supported browsers.
165
171
 
166
172
  ### Modules and Settings
167
173
 
168
- The settings page renders one card per module — switch, description and restart notice all come from the module itself; terminal appearance, LAN mapping, login protection and relay account are configured inside their own cards.
174
+ Enable the features you need and configure them in their module cards. Settings that require a restart are clearly marked.
169
175
 
170
176
  <div align="center">
171
177
  <table>
@@ -178,26 +184,20 @@ The settings page renders one card per module — switch, description and restar
178
184
 
179
185
  ### Login Protection
180
186
 
181
- Off by default; once enabled on its card, one local account guards LAN **and** relay access (default session timeout 30 minutes). Authentication happens at the Host's forwarding boundary, so unauthenticated traffic never reaches DSH Web; `127.0.0.1` and `::1` are always allowed to prevent lockout.
187
+ Set a shared local account for LAN and relay access to protect your remote workbench. Local access remains available.
182
188
 
183
189
  <div align="center">
184
190
  <img width="70%" src="assets/screenshots/login-protection.jpg" alt="Local account login page">
185
191
  </div>
186
192
 
187
- The password is `scrypt`-hashed in a `0600` file, and the browser only holds an `HttpOnly`, `SameSite=Strict` session cookie.
188
-
189
193
  ### Remote Access
190
194
 
191
- | | LAN access | Relay access |
195
+ | Method | Best for | How to connect |
192
196
  | --- | --- | --- |
193
- | Connect from | Same local network | **Any device, anywhere on the internet** |
194
- | Needs | Shared network + open listen port | Host can reach the Control API over HTTPS; your device can reach the Codingns4DSH entry |
195
- | Local port exposed | Yes — chosen interface/port (default `13080`) | No — isolated device tunnel |
196
- | Account | Optional login protection | Codingns4DSH account + bound Host |
197
-
198
- **LAN**: pick a listen interface and port, auto-detect (or type) the local DSH Web port, start, then open `http://<lan-ip>:<port>` from another device; auto-start restores the mapping, and the module patches the `crypto.randomUUID` that plain-HTTP origins need.
197
+ | **LAN access** | Computers, phones or tablets on the same network | Enable the mapping and copy the access URL |
198
+ | **Relay access** | Reaching your workbench while away | Sign in to the relay service and bind your Host |
199
199
 
200
- **Relay**: set the Control API (default `https://channel.codingns.com:1443`, where you can register), log in, refresh devices, bind the current Host (label, public key, fingerprint), then open the bound Host from any device through **`https://dsh.codingns.com`** — no public IP, port forwarding or VPN.
200
+ The relay needs no public IP, port forwarding or VPN. Register at the [Codingns4DSH relay platform](https://channel.codingns.com:1443), then connect to a bound Host from the [remote workbench](https://dsh.codingns.com). Connections are end-to-end encrypted, so the relay cannot read conversation content.
201
201
 
202
202
  <div align="center">
203
203
  <table>
@@ -208,141 +208,116 @@ The password is `scrypt`-hashed in a `0600` file, and the browser only holds an
208
208
  </table>
209
209
  </div>
210
210
 
211
- The account entry next to DSH's Settings button shows login state, access path and latency, host CPU/memory, and offers one-click logout.
212
-
213
211
  <div align="center">
214
212
  <img width="70%" src="assets/screenshots/relay-status.jpg" alt="Account status popover: access path, latency, CPU and memory">
215
213
  </div>
216
214
 
217
- The “access” line tells you whether you entered DSH Web locally, over the LAN or through the relay.
218
-
219
- **Why the relay cannot read your DSH traffic** — the tunnel is end-to-end encrypted, so using it never hands your conversations to a server:
220
-
221
- - Payload travels in a **WebRTC DataChannel protected by DTLS between the DSH Client and the DSH Host**; direct or via TURN, only ciphertext crosses the relay.
222
- - The relay and control service handle **control-plane metadata only**: account/device records, Host binding, tickets, SDP/ICE signaling, online state, traffic accounting.
223
- - Each Host keeps its own DTLS certificate (`~/.config/codingns4dsh/dtls-identity.json`) and publishes a SHA-256 fingerprint the remote side verifies during the handshake — a mismatch aborts the connection (`Host DTLS fingerprint 校验失败`) instead of accepting a substituted certificate; the same fingerprint shows in the relay card for manual comparison.
224
- - Passwords are used only for login requests; refresh token and device credential stay on the Host. Diagnostics log protocol metadata only (direction, type, stream id, status, bytes) — never bodies, tickets, cookies or DSH Web content.
215
+ The account menu shows login status, access method, connection latency and Host load.
225
216
 
226
217
  ---
227
218
 
228
219
  ## Installation
229
220
 
230
- **Requirements**: DSH `>=0.2.0-rc.2 <=0.2.1-alpha.1` (tested with `0.2.1-alpha.1`) · Node.js `>= 22.19` · `pnpm` on `PATH` (`dsh plugin` forwards to pnpm) · optional: Agent CLIs, and `tmux` on macOS/Linux for persistent terminals (`brew install tmux` / `sudo apt install tmux`).
231
-
232
- ### Simplest install: use the built-in `web` profile
221
+ **Requirements**: DSH `>=0.2.0-rc.2 <=0.2.1-alpha.1` (tested with `0.2.1-alpha.1`), Node.js `>=22.19`, and pnpm. Persistent terminals on macOS/Linux also require tmux.
233
222
 
234
- DSH automatically initializes the `web` profile on first use. You do not need to create a config file or run `--dump-config`:
223
+ ### Use the Built-in Web Profile
235
224
 
236
225
  ```bash
237
- dsh plugin --profile web add @jingyi0605/codingns4dsh@0.2.1-beta.4
226
+ dsh plugin --profile web add @jingyi0605/codingns4dsh@0.2.1-beta.6
238
227
  dsh web
239
228
  ```
240
229
 
241
- ### Optional: use a separate profile
230
+ ### Optional: Use a Separate Profile
242
231
 
243
- If you do not want to modify the built-in `web` profile, create a separate profile. Here `--dump-config` only initializes and inspects the profile; it is not required for installing the plugin:
232
+ Create a separate environment from the built-in Web profile:
244
233
 
245
234
  ```bash
246
235
  dsh codingns --from-default-profile web --dump-config
247
- dsh plugin --profile codingns add @jingyi0605/codingns4dsh@0.2.1-beta.4
236
+ dsh plugin --profile codingns add @jingyi0605/codingns4dsh@0.2.1-beta.6
248
237
  dsh codingns
249
238
  ```
250
239
 
251
- - **Do not** use `dsh plugin --profile <new-name> add ...` to create a separate profile that needs the Web UI: it initializes from `@deepseek-ai/dsh-base` only, then fails with `entry "terminal-controller" not found`. Use `--from-default-profile web` for a separate profile.
252
- - A registry 404 means that version is not published yet — use the source install below.
240
+ Restart an existing DSH instance after installation or upgrade. To upgrade, replace the version in the install command with your target version. To uninstall, run `dsh plugin --profile web remove @jingyi0605/codingns4dsh`; replace `web` with your profile name when using a separate profile.
253
241
 
254
- ```bash
255
- # optional: verify the installation
256
- dsh plugin --profile web list --depth 0 # -> codingns4dsh <version>
242
+ ---
257
243
 
258
- # upgrade, pin, uninstall (restart DSH afterwards)
259
- dsh plugin --profile web add @jingyi0605/codingns4dsh@<version>
260
- dsh plugin --profile web remove @jingyi0605/codingns4dsh
261
- ```
244
+ ## First Run
262
245
 
263
- **From source** (npm unavailable, or running a checkout):
246
+ 1. Open **Settings → Codingns4DSH** and enable the modules you need.
247
+ 2. Install and sign in to an Agent on the DSH Host, then choose the Agent and model in the composer.
248
+ 3. Use the right sidebar for terminals, Git, files and workspace debugging.
249
+ 4. Enable the global assistant, create your character and start chatting; prepare voice resources in voice settings for live calls.
250
+ 5. For access from other devices, configure LAN or relay access and enable login protection as needed.
264
251
 
265
- ```bash
266
- git clone https://github.com/jingyi0605/Codingns4DSH.git && cd Codingns4DSH
267
- pnpm install && pnpm build
268
- dsh plugin --profile web add "$PWD" # or: npm pack, then add ./jingyi0605-codingns4dsh-0.2.1-beta.4.tgz
269
- dsh web
270
- ```
252
+ ---
271
253
 
272
- A directory install links the checkout — rebuild (`pnpm build` / `pnpm dev:watch`) and restart DSH after changes.
254
+ ## Troubleshooting
273
255
 
274
- **State on disk**: settings live in `$DSH_HOME/settings.yaml` (default `~/.dsh/settings.yaml`) under the `codingns:` namespace.
256
+ - **Installation fails**: check the required DSH, Node.js and plugin versions; create separate profiles from the Web template.
257
+ - **Agent not detected**: make sure it is installed, signed in, and its command is available to the process running DSH.
258
+ - **Terminal is not persistent**: enable Terminal enhancement and restart DSH; macOS/Linux require tmux.
259
+ - **Voice unavailable**: check resource status in voice settings and allow browser microphone access.
260
+ - **Remote connection fails**: check the network and firewall for LAN access, or login status and Host binding for relay access.
275
261
 
276
- | Path | Contents |
277
- | --- | --- |
278
- | `$DSH_HOME/profiles/<profile>` | Installed plugin packages and `dsh.profile.bundles` |
279
- | `$DSH_HOME/codingns4dsh/` | Terminal `host-id` and `terminals.json` (restore mapping) |
280
- | `~/.config/codingns4dsh/` | Relay credentials, DTLS identity, login-protection hash |
281
- | `<workspace>/.codingns/debug.json` | Debug launch profiles (mode `0600`, secrets rejected) |
262
+ When reporting an issue, include DSH and plugin versions, your OS and the full error: [GitHub Issues](https://github.com/jingyi0605/Codingns4DSH/issues) or the [community groups](#community).
282
263
 
283
264
  ---
284
265
 
285
- ## First Run
286
-
287
- 1. `dsh codingns` opens the DSH Web UI.
288
- 2. Open **Settings → Codingns4DSH** to review the module cards (restart-required ones show both the effective and next-start state).
289
- 3. Install and log in to your Agent CLIs **outside** DSH, keep them on the Host `PATH`, then enable them in **外部Agent集成**.
290
- 4. Pick an Agent, model and thinking level in the composer and send a prompt — output streams into a native session with the Agent's logo.
291
- 5. Right sidebar: Terminal for a workspace shell (enable **终端强化** + restart for persistence); 调试 to add a launch profile and watch its port.
292
- 6. For remote use, turn on **登录保护**, configure **局域网访问DSH**, or log in to **中转访问服务** to connect from any network; the account entry shows the current path and host load.
266
+ ## Community
293
267
 
294
- ---
268
+ The WeChat and QQ groups are for questions, feedback and release announcements — scan either code to join.
295
269
 
296
- ## Troubleshooting
270
+ <div align="center">
271
+ <table>
272
+ <tr>
273
+ <td align="center" width="50%">
274
+ <img width="300" src="assets/screenshots/wechat-group.png" alt="WeChat group QR code: DSH-插件交流群"><br>
275
+ <b>WeChat group</b>: DSH-插件交流群
276
+ </td>
277
+ <td align="center" width="50%">
278
+ <img width="300" src="assets/screenshots/qq-group.png" alt="QQ group QR code: 1092985965"><br>
279
+ <b>QQ group</b>: 1092985965
280
+ </td>
281
+ </tr>
282
+ </table>
283
+ </div>
297
284
 
298
- - **Versions** — `dsh --version`, `dsh plugin --profile web list --depth 0` (replace `web` for a separate profile), `npm view @jingyi0605/codingns4dsh version`; startup rejects DSH outside the supported range, and installation does too whenever it can identify the runtime actually in use.
299
- - **Install-time rejection from a stale `dsh` on `PATH`** — installation only blocks on the host-injected version, the Desktop Runtime root, and a `@deepseek-ai/dsh` resolvable from the profile; `dsh --version` from `PATH` is advisory and never blocks. Runtime still validates the DSH that actually loaded.
300
- - **`patch: entry "terminal-controller" not found`** — the profile lacks the Web app layer; recreate it from the `web` template as shown above.
301
- - **Agent not detected** — run `<cli> --version` on the Host; ensure its directory is on the `PATH` of the process that started DSH (GUI launchers often differ); log in with the vendor tool, then restart DSH.
302
- - **Terminal** — persistent mode needs `tmux` on macOS/Linux; enabling/disabling the module and changing the binding scope need a restart; terminals are addressed per workspace.
303
- - **LAN** — check the card's status indicator and access URL, allow the port through the firewall, keep both devices on one network; with several DSH instances pick the detected port manually; sign in first when login protection is on.
304
- - **Relay** — verify Control API reachability, log in again if the session expired, refresh devices, then bind the Host.
305
- - **Logs** — `CODINGNS4DSH_TUNNEL_DEBUG=1 dsh codingns --no-open` (metadata only); pnpm install logs live in `$DSH_HOME/profiles/<profile>/.plugin-manager/logs/`.
306
- - **Reporting** — include DSH and Codingns4DSH versions, OS, module and exact error: [GitHub Issues](https://github.com/jingyi0605/Codingns4DSH/issues) or QQ **1092985965**.
285
+ The WeChat QR code is generated dynamically by WeChat and is **valid for 7 days** (this image was captured on 2026-10-08 and states it expires on October 15); re-open the group's share page for a fresh code once it lapses, or ask in [GitHub Issues](https://github.com/jingyi0605/Codingns4DSH/issues). The QQ group QR code and group number do not expire.
307
286
 
308
287
  ---
309
288
 
310
289
  ## Development
311
290
 
312
- Requires Node `>= 22.19` and pnpm:
291
+ Use a separate Stage0 environment for source development and follow the [project rules](AGENTS.md) (Chinese). Build, test and type-check commands:
313
292
 
314
293
  ```bash
315
294
  pnpm install
316
- pnpm build # version check -> tsc -> client + H5 bundles
317
- pnpm test # build, then the full test suite (currently 901 cases)
295
+ pnpm build
296
+ pnpm test
318
297
  pnpm typecheck
319
- pnpm run capability:check # capability retirement check
320
298
  ```
321
299
 
322
- Dev loop: `pnpm dev:watch` with `pnpm dev:link <profile>`, then restart DSH. Versions come from `version.json` (`version:set-plugin` / `version:set-dsh`, guarded by `version:check`).
323
-
324
- Layout: `src/host` (Host layer), `src/client` (browser layer), `src/dsh-capabilities` (capability registry and version routing), `src/shared/contracts`, `src/transport` (tunnel + WebRTC), `src/features` (module registry), `tests/`, `specs/`, `docs/`, `data/build` (git-ignored).
325
-
326
- A `v*` tag runs GitHub Actions (tag/version check, frozen install, typecheck, tests, `npm pack`) and publishes with provenance; prereleases get the `next` dist-tag. Releases also run DSH installation replay, runtime module resolution and per-file npm artifact checks.
300
+ Source links and development runs are for Stage0 only. Desktop uses published versions, not source links or local development packages. See the [Stage0 development notes](docs/开发记录/20261007-Stage0自动编译与热重载接入记录.md) (Chinese) for setup.
327
301
 
328
- Screenshot assets and shot list: [assets/screenshots](assets/screenshots/README.md) (Chinese).
329
-
330
- **Chinese version: [README.md](README.md)**
302
+ Design and implementation details live in the [specifications](specs/), [development records](docs/开发记录/) and [development guidelines](docs/开发规范/) (Chinese). The [avatar catalog](assets/assistant-avatar-catalog.md) and [screenshot list](assets/screenshots/README.md) are also available separately.
331
303
 
332
304
  ---
333
305
 
334
306
  ## Acknowledgements
335
307
 
336
- The inspiration for Codingns4DSH — and part of its implementation approach — comes from **[CodexHost](https://github.com/BytePioneer-AI/codex-host)**, which runs Pi, Claude Code, Grok Build and other Harnesses natively inside Codex Desktop. It showed the direction Codingns4DSH follows from the other side: host *other* Harnesses as first-class Agents instead of replacing them. The multi-Harness adapter model, projecting a CLI event stream into native sessions, and keeping each Agent's sessions in the host sidebar and composer trace back to that design. Thanks to its authors and community.
308
+ Thanks to **[CodexHost](https://github.com/BytePioneer-AI/codex-host)** and its community for the inspiration and implementation references for multi-Agent integration. Codingns4DSH is an independent project and is not affiliated with CodexHost.
309
+
310
+ Thanks to the adapter contributors and upstream contributors:
337
311
 
338
- Codingns4DSH is an independent project and is not affiliated with CodexHost.
312
+ - [chenjunyi000](https://github.com/chenjunyi000): MiniMax Code, ZCode ([#6](https://github.com/jingyi0605/Codingns4DSH/pull/6), [#7](https://github.com/jingyi0605/Codingns4DSH/pull/7)).
313
+ - [mouzhi](https://github.com/mouzhi): CodeBuddy, Cursor CLI.
314
+ - [BytePioneer-AI (ChongWen)](https://github.com/BytePioneer-AI): WorkBuddy, Qoder.
315
+ - [gy212](https://github.com/gy212): Kiro CLI, Qoder, Antigravity.
339
316
 
340
317
  ---
341
318
 
342
319
  ## License
343
320
 
344
- Codingns4DSH is released under the **GNU General Public License version 3 or later** (SPDX: `GPL-3.0-or-later`); the full terms are in [LICENSE](LICENSE), and the `license` field in `package.json` matches.
321
+ Released under the **GNU General Public License version 3 or later** (`GPL-3.0-or-later`). See [LICENSE](LICENSE) for the full terms.
345
322
 
346
323
  Copyright (C) 2026 jingyi0605
347
-
348
- You may use, modify and distribute the project freely under the terms of the license; derivative works must stay under the same license, ship the complete source and keep the copyright notice, and the project comes with no warranty.