dsh-over-ssh 0.1.0 → 0.1.1

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 (247) hide show
  1. package/README.md +10 -10
  2. package/agents/agent-manifest.json +1 -1
  3. package/lib/client.js +363 -314
  4. package/lib/file-references.js +80 -35
  5. package/lib/fs.js +158 -75
  6. package/lib/index.js +4103 -3397
  7. package/lib/terminal-wrapper.js +9 -4
  8. package/lib/types/src/config.d.ts +80 -9
  9. package/lib/types/src/file-references.d.ts +0 -1
  10. package/lib/types/src/host/app/backend.d.ts +9 -1
  11. package/lib/types/src/host/app/recycle-bin/recycle-bin-contract.d.ts +0 -1
  12. package/lib/types/src/host/app/recycle-bin/recycle-bin-service.d.ts +0 -1
  13. package/lib/types/src/host/app/session-admin/session-admin-contract.d.ts +12 -1
  14. package/lib/types/src/host/app/session-admin/session-admin-service.d.ts +0 -1
  15. package/lib/types/src/host/app/transport/transport-selector.d.ts +0 -1
  16. package/lib/types/src/host/app/transport/transport-service.d.ts +0 -1
  17. package/lib/types/src/host/domain/capability.d.ts +0 -1
  18. package/lib/types/src/host/domain/errors.d.ts +0 -1
  19. package/lib/types/src/host/domain/roots/connection.d.ts +0 -1
  20. package/lib/types/src/host/domain/roots/root.d.ts +24 -9
  21. package/lib/types/src/host/domain/roots/session-roots.d.ts +0 -1
  22. package/lib/types/src/host/domain/roots/ssh-config.d.ts +0 -1
  23. package/lib/types/src/host/domain/session/session-admin.d.ts +0 -1
  24. package/lib/types/src/host/domain/transfer/recycle-bin.d.ts +0 -1
  25. package/lib/types/src/host/domain/transfer/transfer.d.ts +0 -1
  26. package/lib/types/src/host/infra/transport/agent/agent-installer.d.ts +0 -1
  27. package/lib/types/src/host/infra/transport/ssh/ssh2-transport.d.ts +0 -1
  28. package/lib/types/src/host/infra/transport/transport-base.d.ts +0 -1
  29. package/lib/types/src/host/infra/transport/transport.d.ts +16 -2
  30. package/lib/types/src/host/integration/agent/agent-preflight.d.ts +0 -1
  31. package/lib/types/src/host/integration/fs/file-reference-provider.d.ts +0 -1
  32. package/lib/types/src/host/integration/fs/fs-provider.d.ts +0 -2
  33. package/lib/types/src/host/integration/transfer/transfer-service.d.ts +0 -1
  34. package/lib/types/src/index.d.ts +23 -1
  35. package/lib/types/src/local-bridge-refs.d.ts +0 -1
  36. package/lib/types/src/local-bridge.d.ts +0 -1
  37. package/lib/types/src/shared/root-keys.d.ts +120 -0
  38. package/lib/types/src/wiring/helpers.d.ts +0 -1
  39. package/package.json +5 -3
  40. package/lib/types/src/client/controls.d.ts +0 -131
  41. package/lib/types/src/client/core/card-focus-trap.d.ts +0 -45
  42. package/lib/types/src/client/core/controls.d.ts +0 -164
  43. package/lib/types/src/client/core/latest.d.ts +0 -48
  44. package/lib/types/src/client/core/locale.d.ts +0 -38
  45. package/lib/types/src/client/core/message.d.ts +0 -37
  46. package/lib/types/src/client/core/panel-model.d.ts +0 -134
  47. package/lib/types/src/client/core/portal.d.ts +0 -266
  48. package/lib/types/src/client/core/remote.d.ts +0 -84
  49. package/lib/types/src/client/core/styles.d.ts +0 -458
  50. package/lib/types/src/client/file-tree-io.d.ts +0 -19
  51. package/lib/types/src/client/file-tree.d.ts +0 -271
  52. package/lib/types/src/client/flows/directory-browser.d.ts +0 -587
  53. package/lib/types/src/client/flows/session-directory.d.ts +0 -415
  54. package/lib/types/src/client/flows/workspace-directory-flow.d.ts +0 -480
  55. package/lib/types/src/client/locale.d.ts +0 -31
  56. package/lib/types/src/client/panel-model.d.ts +0 -37
  57. package/lib/types/src/client/panel.d.ts +0 -77
  58. package/lib/types/src/client/roots/connection-test.d.ts +0 -69
  59. package/lib/types/src/client/roots/roots-panel-state.d.ts +0 -307
  60. package/lib/types/src/client/roots/roots-panel-view.d.ts +0 -280
  61. package/lib/types/src/client/roots/roots-panel.d.ts +0 -364
  62. package/lib/types/src/client/roots/transfer-panel-view.d.ts +0 -35
  63. package/lib/types/src/client/roots/transfer-panel.d.ts +0 -241
  64. package/lib/types/src/client/roots/transfer-progress.d.ts +0 -67
  65. package/lib/types/src/client/roots-panel-view.d.ts +0 -236
  66. package/lib/types/src/client/roots-panel.d.ts +0 -347
  67. package/lib/types/src/client/session/session-panel-view.d.ts +0 -336
  68. package/lib/types/src/client/session/session-panel.d.ts +0 -322
  69. package/lib/types/src/client/session/session-remote-mark.d.ts +0 -110
  70. package/lib/types/src/client/session/session-row-actions.d.ts +0 -398
  71. package/lib/types/src/client/session-panel.d.ts +0 -152
  72. package/lib/types/src/client/styles.d.ts +0 -252
  73. package/lib/types/src/client/workspace-directory-flow.d.ts +0 -342
  74. package/lib/types/src/fs.d.ts +0 -46
  75. package/lib/types/src/host/app/recycle-bin/recycle-bin-move.d.ts +0 -18
  76. package/lib/types/src/host/app/recycle-bin/recycle-bin-world.d.ts +0 -38
  77. package/lib/types/src/host/app/recycle-bin-contract.d.ts +0 -215
  78. package/lib/types/src/host/app/recycle-bin-move.d.ts +0 -18
  79. package/lib/types/src/host/app/recycle-bin-service.d.ts +0 -45
  80. package/lib/types/src/host/app/recycle-bin-world.d.ts +0 -35
  81. package/lib/types/src/host/app/roots/roots-api-connections.d.ts +0 -49
  82. package/lib/types/src/host/app/roots/roots-api-contract.d.ts +0 -369
  83. package/lib/types/src/host/app/roots/roots-api-directories.d.ts +0 -13
  84. package/lib/types/src/host/app/roots/roots-api-http.d.ts +0 -77
  85. package/lib/types/src/host/app/roots/roots-api-long-poll.d.ts +0 -130
  86. package/lib/types/src/host/app/roots/roots-api-projections.d.ts +0 -102
  87. package/lib/types/src/host/app/roots/roots-api-roots.d.ts +0 -13
  88. package/lib/types/src/host/app/roots/roots-api-state.d.ts +0 -22
  89. package/lib/types/src/host/app/roots/roots-api-transfers.d.ts +0 -26
  90. package/lib/types/src/host/app/roots/roots-api.d.ts +0 -55
  91. package/lib/types/src/host/app/roots/user-roots.d.ts +0 -552
  92. package/lib/types/src/host/app/roots-api-connections.d.ts +0 -49
  93. package/lib/types/src/host/app/roots-api-contract.d.ts +0 -339
  94. package/lib/types/src/host/app/roots-api-directories.d.ts +0 -13
  95. package/lib/types/src/host/app/roots-api-http.d.ts +0 -77
  96. package/lib/types/src/host/app/roots-api-projections.d.ts +0 -102
  97. package/lib/types/src/host/app/roots-api-roots.d.ts +0 -13
  98. package/lib/types/src/host/app/roots-api-state.d.ts +0 -22
  99. package/lib/types/src/host/app/roots-api-support.d.ts +0 -182
  100. package/lib/types/src/host/app/roots-api-transfers.d.ts +0 -13
  101. package/lib/types/src/host/app/roots-api.d.ts +0 -55
  102. package/lib/types/src/host/app/routed-fs.d.ts +0 -239
  103. package/lib/types/src/host/app/serialize.d.ts +0 -37
  104. package/lib/types/src/host/app/session-admin/session-admin-context.d.ts +0 -36
  105. package/lib/types/src/host/app/session-admin/session-admin-delete.d.ts +0 -34
  106. package/lib/types/src/host/app/session-admin-context.d.ts +0 -36
  107. package/lib/types/src/host/app/session-admin-contract.d.ts +0 -214
  108. package/lib/types/src/host/app/session-admin-delete.d.ts +0 -34
  109. package/lib/types/src/host/app/session-admin-service.d.ts +0 -38
  110. package/lib/types/src/host/app/takeover/takeover-plan.d.ts +0 -227
  111. package/lib/types/src/host/app/takeover/takeover-rows.d.ts +0 -55
  112. package/lib/types/src/host/app/transport-selector.d.ts +0 -98
  113. package/lib/types/src/host/app/transport-service.d.ts +0 -75
  114. package/lib/types/src/host/app/user-roots.d.ts +0 -461
  115. package/lib/types/src/host/domain/bin-location.d.ts +0 -79
  116. package/lib/types/src/host/domain/connection.d.ts +0 -95
  117. package/lib/types/src/host/domain/glob-pattern.d.ts +0 -62
  118. package/lib/types/src/host/domain/literal-text.d.ts +0 -63
  119. package/lib/types/src/host/domain/path-grammar.d.ts +0 -84
  120. package/lib/types/src/host/domain/recycle-bin.d.ts +0 -337
  121. package/lib/types/src/host/domain/root.d.ts +0 -74
  122. package/lib/types/src/host/domain/roots/bin-location.d.ts +0 -91
  123. package/lib/types/src/host/domain/roots/route-table.d.ts +0 -102
  124. package/lib/types/src/host/domain/route-table.d.ts +0 -80
  125. package/lib/types/src/host/domain/session/terminal-target.d.ts +0 -136
  126. package/lib/types/src/host/domain/session-admin.d.ts +0 -330
  127. package/lib/types/src/host/domain/shell.d.ts +0 -47
  128. package/lib/types/src/host/domain/ssh-config.d.ts +0 -73
  129. package/lib/types/src/host/domain/terminal-target.d.ts +0 -132
  130. package/lib/types/src/host/domain/tool-requests.d.ts +0 -369
  131. package/lib/types/src/host/domain/transfer.d.ts +0 -260
  132. package/lib/types/src/host/infra/backend/local-backend.d.ts +0 -84
  133. package/lib/types/src/host/infra/backend/local-version.d.ts +0 -43
  134. package/lib/types/src/host/infra/backend/platform-local-backend.d.ts +0 -89
  135. package/lib/types/src/host/infra/backend/remote-backend.d.ts +0 -239
  136. package/lib/types/src/host/infra/cache/lru.d.ts +0 -52
  137. package/lib/types/src/host/infra/cache/versioned.d.ts +0 -77
  138. package/lib/types/src/host/infra/temp-name.d.ts +0 -19
  139. package/lib/types/src/host/infra/transport/agent/agent-protocol-client.d.ts +0 -132
  140. package/lib/types/src/host/infra/transport/agent/agent-protocol-codec.d.ts +0 -140
  141. package/lib/types/src/host/infra/transport/agent/agent-protocol-errors.d.ts +0 -41
  142. package/lib/types/src/host/infra/transport/agent/agent-protocol-frames.d.ts +0 -197
  143. package/lib/types/src/host/infra/transport/agent/agent-protocol-types.d.ts +0 -564
  144. package/lib/types/src/host/infra/transport/agent/agent-transport.d.ts +0 -418
  145. package/lib/types/src/host/infra/transport/agent-installer.d.ts +0 -121
  146. package/lib/types/src/host/infra/transport/agent-protocol-client.d.ts +0 -123
  147. package/lib/types/src/host/infra/transport/agent-protocol-codec.d.ts +0 -131
  148. package/lib/types/src/host/infra/transport/agent-protocol-errors.d.ts +0 -41
  149. package/lib/types/src/host/infra/transport/agent-protocol-frames.d.ts +0 -197
  150. package/lib/types/src/host/infra/transport/agent-protocol-types.d.ts +0 -509
  151. package/lib/types/src/host/infra/transport/agent-transport.d.ts +0 -353
  152. package/lib/types/src/host/infra/transport/alias-transport.d.ts +0 -206
  153. package/lib/types/src/host/infra/transport/askpass-fs.d.ts +0 -20
  154. package/lib/types/src/host/infra/transport/askpass.d.ts +0 -133
  155. package/lib/types/src/host/infra/transport/command-pool.d.ts +0 -61
  156. package/lib/types/src/host/infra/transport/fs-commands.d.ts +0 -140
  157. package/lib/types/src/host/infra/transport/git-status-route.d.ts +0 -63
  158. package/lib/types/src/host/infra/transport/git-status.d.ts +0 -101
  159. package/lib/types/src/host/infra/transport/node-spawn.d.ts +0 -26
  160. package/lib/types/src/host/infra/transport/session-window.d.ts +0 -51
  161. package/lib/types/src/host/infra/transport/shell-quote.d.ts +0 -59
  162. package/lib/types/src/host/infra/transport/ssh/alias-transport.d.ts +0 -206
  163. package/lib/types/src/host/infra/transport/ssh/askpass-fs.d.ts +0 -20
  164. package/lib/types/src/host/infra/transport/ssh/askpass.d.ts +0 -133
  165. package/lib/types/src/host/infra/transport/ssh/shell-quote.d.ts +0 -62
  166. package/lib/types/src/host/infra/transport/ssh/ssh-argv.d.ts +0 -43
  167. package/lib/types/src/host/infra/transport/ssh-argv.d.ts +0 -43
  168. package/lib/types/src/host/infra/transport/ssh2-transport.d.ts +0 -302
  169. package/lib/types/src/host/integration/agent/agent-install-io.d.ts +0 -33
  170. package/lib/types/src/host/integration/agent/askpass-registry.d.ts +0 -66
  171. package/lib/types/src/host/integration/agent-install-io.d.ts +0 -33
  172. package/lib/types/src/host/integration/agent-preflight.d.ts +0 -56
  173. package/lib/types/src/host/integration/anchor-directory.d.ts +0 -56
  174. package/lib/types/src/host/integration/askpass-registry.d.ts +0 -59
  175. package/lib/types/src/host/integration/bin-root-resolver.d.ts +0 -81
  176. package/lib/types/src/host/integration/connection-test.d.ts +0 -73
  177. package/lib/types/src/host/integration/file-reference-provider.d.ts +0 -115
  178. package/lib/types/src/host/integration/fs/git-status-wiring.d.ts +0 -21
  179. package/lib/types/src/host/integration/fs/platform-errors.d.ts +0 -94
  180. package/lib/types/src/host/integration/fs/remote-file-tools.d.ts +0 -369
  181. package/lib/types/src/host/integration/fs/remote-index.d.ts +0 -177
  182. package/lib/types/src/host/integration/fs-provider.d.ts +0 -226
  183. package/lib/types/src/host/integration/lsp/lsp-framing.d.ts +0 -38
  184. package/lib/types/src/host/integration/lsp/lsp-registry.d.ts +0 -67
  185. package/lib/types/src/host/integration/lsp/lsp-session.d.ts +0 -130
  186. package/lib/types/src/host/integration/management-tools.d.ts +0 -64
  187. package/lib/types/src/host/integration/recycle-bin-service.d.ts +0 -247
  188. package/lib/types/src/host/integration/remote/connection-test.d.ts +0 -73
  189. package/lib/types/src/host/integration/remote/remote-face.d.ts +0 -127
  190. package/lib/types/src/host/integration/remote/remote-tool-backend.d.ts +0 -108
  191. package/lib/types/src/host/integration/remote-face.d.ts +0 -127
  192. package/lib/types/src/host/integration/remote-file-tools.d.ts +0 -241
  193. package/lib/types/src/host/integration/remote-home.d.ts +0 -69
  194. package/lib/types/src/host/integration/remote-index.d.ts +0 -165
  195. package/lib/types/src/host/integration/remote-job-tools.d.ts +0 -295
  196. package/lib/types/src/host/integration/remote-tool-backend.d.ts +0 -97
  197. package/lib/types/src/host/integration/remote-tools.d.ts +0 -206
  198. package/lib/types/src/host/integration/root-registry.d.ts +0 -115
  199. package/lib/types/src/host/integration/roots/anchor-directory.d.ts +0 -56
  200. package/lib/types/src/host/integration/roots/bin-root-resolver.d.ts +0 -81
  201. package/lib/types/src/host/integration/roots/remote-home.d.ts +0 -69
  202. package/lib/types/src/host/integration/roots/root-registry.d.ts +0 -144
  203. package/lib/types/src/host/integration/roots/roots-wiring.d.ts +0 -219
  204. package/lib/types/src/host/integration/roots/session-root-index.d.ts +0 -52
  205. package/lib/types/src/host/integration/roots-api.d.ts +0 -407
  206. package/lib/types/src/host/integration/roots-wiring.d.ts +0 -211
  207. package/lib/types/src/host/integration/session/session-api.d.ts +0 -88
  208. package/lib/types/src/host/integration/session/session-bin-lock.d.ts +0 -80
  209. package/lib/types/src/host/integration/session/session-header.d.ts +0 -151
  210. package/lib/types/src/host/integration/session/session-labels.d.ts +0 -56
  211. package/lib/types/src/host/integration/session/session-route-wiring.d.ts +0 -50
  212. package/lib/types/src/host/integration/session-admin-service.d.ts +0 -236
  213. package/lib/types/src/host/integration/session-api.d.ts +0 -81
  214. package/lib/types/src/host/integration/session-bin-lock.d.ts +0 -80
  215. package/lib/types/src/host/integration/session-header.d.ts +0 -118
  216. package/lib/types/src/host/integration/session-labels.d.ts +0 -56
  217. package/lib/types/src/host/integration/session-route-wiring.d.ts +0 -50
  218. package/lib/types/src/host/integration/session-scope.d.ts +0 -113
  219. package/lib/types/src/host/integration/session-tools.d.ts +0 -44
  220. package/lib/types/src/host/integration/strict-arguments.d.ts +0 -79
  221. package/lib/types/src/host/integration/takeover/takeover-api.d.ts +0 -62
  222. package/lib/types/src/host/integration/takeover/takeover-route-wiring.d.ts +0 -60
  223. package/lib/types/src/host/integration/takeover/takeover-service.d.ts +0 -167
  224. package/lib/types/src/host/integration/terminal-manifest.d.ts +0 -94
  225. package/lib/types/src/host/integration/tools/management-tools.d.ts +0 -245
  226. package/lib/types/src/host/integration/tools/remote-job-tools.d.ts +0 -316
  227. package/lib/types/src/host/integration/tools/remote-lsp-tools.d.ts +0 -43
  228. package/lib/types/src/host/integration/tools/remote-tools.d.ts +0 -236
  229. package/lib/types/src/host/integration/tools/session-target.d.ts +0 -52
  230. package/lib/types/src/host/integration/tools/session-tools.d.ts +0 -46
  231. package/lib/types/src/host/integration/tools/strict-arguments.d.ts +0 -79
  232. package/lib/types/src/host/integration/tools/terminal-manifest.d.ts +0 -94
  233. package/lib/types/src/host/integration/transfer/remote-copy.d.ts +0 -66
  234. package/lib/types/src/host/integration/transfer/transfer-adapters.d.ts +0 -48
  235. package/lib/types/src/host/integration/transfer/transfer-tracker.d.ts +0 -106
  236. package/lib/types/src/host/integration/transfer-adapters.d.ts +0 -44
  237. package/lib/types/src/host/integration/transfer-service.d.ts +0 -164
  238. package/lib/types/src/host/integration/transfer-tracker.d.ts +0 -106
  239. package/lib/types/src/host/integration/user-roots.d.ts +0 -461
  240. package/lib/types/src/wiring/connections.d.ts +0 -189
  241. package/lib/types/src/wiring/fs.d.ts +0 -13
  242. package/lib/types/src/wiring/install-memo.d.ts +0 -32
  243. package/lib/types/src/wiring/legacy-dirs.d.ts +0 -62
  244. package/lib/types/src/wiring/package-paths.d.ts +0 -35
  245. package/lib/types/src/wiring/roots.d.ts +0 -21
  246. package/lib/types/src/wiring/state-dir.d.ts +0 -29
  247. package/lib/types/src/wiring/tools.d.ts +0 -35
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  DSH(DeepSeek Harness)第三方插件:把 VSCode Remote-SSH 式的远程开发做进 DSH —— 连接管理(密钥 / 密码 / ProxyJump / `~/.ssh/config` 导入)、远程文件(**无同步**直读直写)、远程终端、远程工作区、远端 `@` 补全、上传/下载,并支持"本地根 + 远端根"同处一个工作区。
4
4
 
5
- 设计依据:[`doc/01-product/02-技术设计-SSH远程开发插件.md`](doc/01-product/02-技术设计-SSH远程开发插件.md)(v0.2)。需求依据:[`doc/01-product/01-需求分析-多根工作区-远程根-会话管理.md`](doc/01-product/01-需求分析-多根工作区-远程根-会话管理.md)(v0.4)。文档知识库入口:[`doc/README.md`](doc/README.md)。
5
+ 设计依据:`doc/01-product/02-技术设计-SSH远程开发插件.md`(v0.2)。需求依据:`doc/01-product/01-需求分析-多根工作区-远程根-会话管理.md`(v0.4)。文档知识库入口:`doc/README.md`。
6
6
 
7
7
  ## 安装
8
8
 
@@ -61,7 +61,7 @@ shell:
61
61
  - **传输层自研**,不使用核心 `packages/ssh/*` 家族。原因见设计文档 §3.1:官方实现的 `BatchMode=yes` 让密码认证不可能、远端必须预装 Node + helper、`ctx.ssh` 单例、且其 Web 集成需单独实现(preset 的 `isolate` 子树覆盖不到 `agent.ctx`)。
62
62
  - **文件按路径路由,进程不路由**:核心 provider 的公开方法收不到 agent/session 身份,因此 fs 用自研路由 provider 支持"本地 + 远端多根",而 bash/终端保持单一执行世界,远端命令走显式入口。
63
63
  - **远端零安装(Tier 1,地板)**:只依赖远端已有的 POSIX 工具(`sh`/`base64`/`stat`/`find`/可选 `git`/`rg`),连上后做一次能力探测并按能力降级。
64
- - **可选 Go 代理(Tier 2,增强)**:独立仓库 [`../dsh-over-ssh-agent`](../dsh-over-ssh-agent),纯静态单文件(随包产物的体积与摘要以 `agents/agent-manifest.json` 的 `bytes`/`sha256` 为准,交叉编译矩阵见 [`../dsh-over-ssh-agent/doc/05-benchmarks/baseline.md`](../dsh-over-ssh-agent/doc/05-benchmarks/baseline.md);零第三方依赖),经 ssh stdio 通信(不监听端口),补齐原生监听/索引/长任务/远端 LSP/Landlock 围栏。决策见 [`doc/03-decisions/0005-optional-go-remote-agent.md`](doc/03-decisions/0005-optional-go-remote-agent.md);代理不可用时一律回退 Tier 1。
64
+ - **可选 Go 代理(Tier 2,增强)**:独立仓库 `../dsh-over-ssh-agent`,纯静态单文件(随包产物的体积与摘要以 `agents/agent-manifest.json` 的 `bytes`/`sha256` 为准,交叉编译矩阵见 `../dsh-over-ssh-agent/doc/05-benchmarks/baseline.md`;零第三方依赖),经 ssh stdio 通信(不监听端口),补齐原生监听/索引/长任务/远端 LSP/Landlock 围栏。决策见 `doc/03-decisions/0005-optional-go-remote-agent.md`;代理不可用时一律回退 Tier 1。
65
65
  - **默认尝试部署**(2026-10-13 起,审计 0040):连接的默认传输是 `agent`,首次连接会把代理装到远端 `$HOME/.cache/dsh-over-ssh/dsh-over-ssh-agent`(约 4.7 MiB / 4,907,168 B,以 `agents/agent-manifest.json` 为准,`0700`),失败自动回退 Tier 1。想避开远端写入就显式写 `transport: alias`。
66
66
  - **密码认证同样可用**:代理经系统 ssh 启动,而系统 ssh 靠 `SSH_ASKPASS` 助手取密码(秘密只经环境变量传递,不落盘)。此前"密码认证无法用代理"的说法是把本插件硬写 `BatchMode=yes` 误当成了 SSH 的限制。
67
67
  - 随包只带 `linux-amd64` 与 `linux-arm64` 两个产物;其它平台的远端会正常降级到 Tier 1。
@@ -91,7 +91,7 @@ npm run typecheck # 需要先安装 devDependencies(typescript)
91
91
 
92
92
  约定:**一个源文件对应一个 `tests/<同名>.test.ts`**;领域层与基础设施层不依赖核心包,因此测试无需安装 `@deepseek-ai/*`。
93
93
 
94
- 当前数字只在 [`doc/05-benchmarks/baseline.md`](doc/05-benchmarks/baseline.md) 维护,本文不重复抄录。抄录的副本会与基准不一致,这类不一致在本仓库已经出现过。要现在的数字就跑命令:
94
+ 当前数字只在 `doc/05-benchmarks/baseline.md` 维护,本文不重复抄录。抄录的副本会与基准不一致,这类不一致在本仓库已经出现过。要现在的数字就跑命令:
95
95
 
96
96
  ```sh
97
97
  node --test --test-concurrency=4 "tests/**/*.test.ts" # 正确性:用例数与失败数
@@ -108,13 +108,13 @@ npm run agents # 随包代理清
108
108
 
109
109
  见设计文档 §13:M0 spike(三个未验证假设)→ M1 传输与连接管理 → M2 路由 fs → M3 远端搜索与 `@` → M4 文件树与传输 → M5 远程终端 → M6 会话管理 → M7 性能与内存回归。
110
110
 
111
- 当前进度(本仓库内):只列最近三条,更早的里程碑见 [`doc/06-audits/README.md`](doc/06-audits/README.md) 的历史记录表。
111
+ 当前进度(本仓库内):只列最近三条,更早的里程碑见 `doc/06-audits/README.md` 的历史记录表。
112
112
 
113
113
  - [x] **改名 `dsh-over-ssh`**:仓库目录、Go module、二进制、状态目录、两个回收站、HTTP 路由共 11 处名字统一,
114
- 已有数据走 4 条一次性迁移(远端旧代理目录不删)。见 [`0110`](doc/06-audits/0110-rename-to-dsh-over-ssh.md)。
115
- - [x] 阶段 2 的「添加目录」按**会话**隔离。同一工作区开两个会话时,A 加的目录 B 既看不到也用不了;fork 出来的会话继承父会话的目录,老数据(无 `sessions` 字段)保持工作区级不打断。会话身份由 `AsyncLocalStorage` 从工具派发带到 `ctx.fs`(平台只给 fs 传 `cwd`)。GUI 文件面板、`glob`/`grep` 与隐式会话根三处残余面已写明。见 [`0108`](doc/06-audits/0108-per-session-root-isolation.md)。
116
- - [ ] 阶段 2 的「一键接管」开关尚不可用。审计 0095 的实现有宿主异步清单、行标识与回滚缺陷,不安全的逐行写入路径已移除,面板只显示状态与手动配置提示。平台的单行管理 API 不能保证四行批量原子切换或精确恢复原有 profile 覆盖,要等可靠的批量事务与还原机制可用并通过真实组合验证后才能启用。见 [`0096`](doc/06-audits/0096-takeover-safety-correction.md)。
117
- - [x] 阶段 2 的会话工作目录根。活会话 cwd 自动成为会话作用域、隐藏、纯内存的本地根;`resolve`/`lstat` 失败时同步一次再重试。真机端到端未跑。见 [`0094`](doc/06-audits/0094-session-workspace-root.md)。
118
- - [x] 卸载不等于关闭。用时间区分重注册与真关闭:`surfaceDetached()` 推迟一个任务、`surfaceAttached()` 取消,调度可注入,策略离线可测。见 [`0091`](doc/06-audits/0091-unmount-is-not-close.md)。
114
+ 已有数据走 4 条一次性迁移(远端旧代理目录不删)。见 `0110`(`doc/06-audits/0110-rename-to-dsh-over-ssh.md`)。
115
+ - [x] 阶段 2 的「添加目录」按**会话**隔离。同一工作区开两个会话时,A 加的目录 B 既看不到也用不了;fork 出来的会话继承父会话的目录,老数据(无 `sessions` 字段)保持工作区级不打断。会话身份由 `AsyncLocalStorage` 从工具派发带到 `ctx.fs`(平台只给 fs 传 `cwd`)。GUI 文件面板、`glob`/`grep` 与隐式会话根三处残余面已写明。见 `0108`(`doc/06-audits/0108-per-session-root-isolation.md`)。
116
+ - [ ] 阶段 2 的「一键接管」开关尚不可用。审计 0095 的实现有宿主异步清单、行标识与回滚缺陷,不安全的逐行写入路径已移除,面板只显示状态与手动配置提示。平台的单行管理 API 不能保证四行批量原子切换或精确恢复原有 profile 覆盖,要等可靠的批量事务与还原机制可用并通过真实组合验证后才能启用。见 `0096`(`doc/06-audits/0096-takeover-safety-correction.md`)。
117
+ - [x] 阶段 2 的会话工作目录根。活会话 cwd 自动成为会话作用域、隐藏、纯内存的本地根;`resolve`/`lstat` 失败时同步一次再重试。真机端到端未跑。见 `0094`(`doc/06-audits/0094-session-workspace-root.md`)。
118
+ - [x] 卸载不等于关闭。用时间区分重注册与真关闭:`surfaceDetached()` 推迟一个任务、`surfaceAttached()` 取消,调度可注入,策略离线可测。见 `0091`(`doc/06-audits/0091-unmount-is-not-close.md`)。
119
119
 
120
- 并行轨道(独立仓库 [`../dsh-over-ssh-agent`](../dsh-over-ssh-agent)):协议、文件原语、索引与搜索、watch、proc、LSP、Landlock 围栏均已实现,多会话与常驻 daemon 分四阶段完成。当前状态、未做项与实测数字见该仓库的 [`README.md`](../dsh-over-ssh-agent/README.md) 与 [`benchmark`](../dsh-over-ssh-agent/doc/05-benchmarks/baseline.md)。
120
+ 并行轨道(独立仓库 `../dsh-over-ssh-agent`):协议、文件原语、索引与搜索、watch、proc、LSP、Landlock 围栏均已实现,多会话与常驻 daemon 分四阶段完成。当前状态、未做项与实测数字见该仓库的 `README.md`(`../dsh-over-ssh-agent/README.md`) 与 `benchmark`(`../dsh-over-ssh-agent/doc/05-benchmarks/baseline.md`)。
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 1,
3
- "generatedAt": "2026-11-01T13:33:43.884Z",
3
+ "generatedAt": "2026-11-02T16:02:32.695Z",
4
4
  "agentVersion": "1.7.0-0ae8c02",
5
5
  "sourceCommit": "0ae8c02",
6
6
  "artifacts": [