@jingyi0605/codingns 0.4.0 → 0.5.0

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 (267) hide show
  1. package/bin/codingns.mjs +425 -1
  2. package/dist/public/assets/AdaptiveButlerPage-B153lk5H.css +1 -0
  3. package/dist/public/assets/AdaptiveButlerPage-R-XZw7pd.js +3 -0
  4. package/dist/public/assets/App-DUAg5urj.css +1 -0
  5. package/dist/public/assets/App-DkvE5EyM.js +30 -0
  6. package/dist/public/assets/BootstrapPage-Vu5oEJ8z.js +1 -0
  7. package/dist/public/assets/ConversationPage-Cjpg6g0J.js +2 -0
  8. package/dist/public/assets/DesktopDetachPreviewPage-BgeEqbc5.js +1 -0
  9. package/dist/public/assets/DesktopWindowPage-1WelvxdH.js +2 -0
  10. package/dist/public/assets/FileContextPanel-D_ghXJuW.js +1 -0
  11. package/dist/public/assets/GitSidebar-D9f9Jxwr.js +6 -0
  12. package/dist/public/assets/MobileCreateSessionSheet-DLq5qPkx.js +1 -0
  13. package/dist/public/assets/MobileSheet-DLg-gX1t.js +1 -0
  14. package/dist/public/assets/MobileTopHeaderFrame-DArgZI7L.js +1 -0
  15. package/dist/public/assets/MobileWorkspaceSwitcherHeader-0ywJKfBQ.js +1 -0
  16. package/dist/public/assets/ServerSettingsModal-izoYMx9U.js +1 -0
  17. package/dist/public/assets/SessionIndexPage-C5aG8FIv.js +1 -0
  18. package/dist/public/assets/SettingsPage-HJIC-P-4.js +1 -0
  19. package/dist/public/assets/TerminalManagerPanel-DpyUTo9k.js +1 -0
  20. package/dist/public/assets/{TerminalPage-6jHZV9Mh.js → TerminalPage-CtKXIU0h.js} +19 -19
  21. package/dist/public/assets/TerminalRuntimeFallbackModal-CRhOQOsT.js +1 -0
  22. package/dist/public/assets/ToolFilesPage-DcYPsS-e.js +1 -0
  23. package/dist/public/assets/ToolGitPage-CsPl89ty.js +1 -0
  24. package/dist/public/assets/ToolProcessesPage-D0dvR8xK.js +1 -0
  25. package/dist/public/assets/ToolsHomePage-4fP-KRiv.js +1 -0
  26. package/dist/public/assets/WorkbenchLandingPage-kvlfyxRo.js +1 -0
  27. package/dist/public/assets/WorkbenchLayout-ByFw4eeu.js +3 -0
  28. package/dist/public/assets/WorkbenchModal-Ctob14VR.js +1 -0
  29. package/dist/public/assets/WorkbenchShellRoute-BUITtdAg.css +1 -0
  30. package/dist/public/assets/WorkbenchShellRoute-Kw7JEZI3.js +1 -0
  31. package/dist/public/assets/WorkspaceDebugDetailPage-Com5kEXJ.js +1 -0
  32. package/dist/public/assets/WorkspaceDetailPage-D0Lrx4Uz.js +1 -0
  33. package/dist/public/assets/WorkspaceHomePage-wR8d3aP9.js +1 -0
  34. package/dist/public/assets/butler-records-events-DgWCG364.js +1 -0
  35. package/dist/public/assets/default-session-permission-mode-CcGwR4Kk.js +1 -0
  36. package/dist/public/assets/event-DvH9tcej.js +1 -0
  37. package/dist/public/assets/file-tree-icon-UFVoVzhM.js +31 -0
  38. package/dist/public/assets/index-Byp9hJ0c.js +42 -0
  39. package/dist/public/assets/index-_52jxu4a.css +1 -0
  40. package/dist/public/assets/preferences-service-KIYeE2gk.js +1 -0
  41. package/dist/public/assets/session-runtime-machine-0KNSSPp5.js +17 -0
  42. package/dist/public/assets/styles-BWPBZvze.css +1 -0
  43. package/dist/public/assets/styles-CSUx5LGe.js +1 -0
  44. package/dist/public/assets/terminal-runtime-meta-AWXJpN4r.js +1 -0
  45. package/dist/public/assets/useRegisteredDebugTemplates-DBDRdptr.js +1 -0
  46. package/dist/public/assets/window-BWqRixxq.js +1 -0
  47. package/dist/public/index.html +2 -2
  48. package/dist/server/middlewares/auth-guard.d.ts +4 -0
  49. package/dist/server/middlewares/auth-guard.js +42 -4
  50. package/dist/server/middlewares/auth-guard.js.map +1 -1
  51. package/dist/server/modules/assistant-capability/assistant-capability-controller.d.ts +62 -1
  52. package/dist/server/modules/assistant-capability/assistant-capability-controller.js +58 -0
  53. package/dist/server/modules/assistant-capability/assistant-capability-controller.js.map +1 -1
  54. package/dist/server/modules/assistant-capability/assistant-capability-service.d.ts +66 -3
  55. package/dist/server/modules/assistant-capability/assistant-capability-service.js +173 -1
  56. package/dist/server/modules/assistant-capability/assistant-capability-service.js.map +1 -1
  57. package/dist/server/modules/auth/auth-controller.d.ts +11 -1
  58. package/dist/server/modules/auth/auth-controller.js +61 -2
  59. package/dist/server/modules/auth/auth-controller.js.map +1 -1
  60. package/dist/server/modules/auth/auth-device-display-name.d.ts +10 -0
  61. package/dist/server/modules/auth/auth-device-display-name.js +190 -0
  62. package/dist/server/modules/auth/auth-device-display-name.js.map +1 -0
  63. package/dist/server/modules/auth/auth-service.d.ts +80 -5
  64. package/dist/server/modules/auth/auth-service.js +333 -23
  65. package/dist/server/modules/auth/auth-service.js.map +1 -1
  66. package/dist/server/modules/butler/assistant-automation-service.d.ts +2 -0
  67. package/dist/server/modules/butler/assistant-automation-service.js +46 -0
  68. package/dist/server/modules/butler/assistant-automation-service.js.map +1 -1
  69. package/dist/server/modules/butler/assistant-sandbox-cleanup-scheduler.d.ts +32 -0
  70. package/dist/server/modules/butler/assistant-sandbox-cleanup-scheduler.js +93 -0
  71. package/dist/server/modules/butler/assistant-sandbox-cleanup-scheduler.js.map +1 -0
  72. package/dist/server/modules/butler/assistant-sandbox-service.d.ts +16 -2
  73. package/dist/server/modules/butler/assistant-sandbox-service.js +137 -4
  74. package/dist/server/modules/butler/assistant-sandbox-service.js.map +1 -1
  75. package/dist/server/modules/butler/butler-auth-service.js +7 -2
  76. package/dist/server/modules/butler/butler-auth-service.js.map +1 -1
  77. package/dist/server/modules/butler/butler-control-session-service.d.ts +4 -1
  78. package/dist/server/modules/butler/butler-control-session-service.js +20 -1
  79. package/dist/server/modules/butler/butler-control-session-service.js.map +1 -1
  80. package/dist/server/modules/butler/butler-follow-up-evaluation-instruction-adapter.d.ts +2 -1
  81. package/dist/server/modules/butler/butler-follow-up-evaluation-instruction-adapter.js +27 -25
  82. package/dist/server/modules/butler/butler-follow-up-evaluation-instruction-adapter.js.map +1 -1
  83. package/dist/server/modules/butler/butler-follow-up-service.d.ts +32 -4
  84. package/dist/server/modules/butler/butler-follow-up-service.js +436 -331
  85. package/dist/server/modules/butler/butler-follow-up-service.js.map +1 -1
  86. package/dist/server/modules/butler/butler-inbox-analysis-service.d.ts +1 -1
  87. package/dist/server/modules/butler/butler-inbox-analysis-service.js.map +1 -1
  88. package/dist/server/modules/butler/butler-inbox-service.js +1 -0
  89. package/dist/server/modules/butler/butler-inbox-service.js.map +1 -1
  90. package/dist/server/modules/butler/butler-session-service.d.ts +3 -1
  91. package/dist/server/modules/butler/butler-session-service.js +15 -1
  92. package/dist/server/modules/butler/butler-session-service.js.map +1 -1
  93. package/dist/server/modules/butler/butler-workspace-context.d.ts +1 -1
  94. package/dist/server/modules/butler/butler-workspace-context.js +54 -28
  95. package/dist/server/modules/butler/butler-workspace-context.js.map +1 -1
  96. package/dist/server/modules/provider/provider-controller.d.ts +1 -1
  97. package/dist/server/modules/provider/provider-controller.js.map +1 -1
  98. package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-identity-service.d.ts +10 -0
  99. package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-identity-service.js +48 -0
  100. package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-identity-service.js.map +1 -0
  101. package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-packets.d.ts +48 -0
  102. package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-packets.js +11 -0
  103. package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-packets.js.map +1 -0
  104. package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-protocol.d.ts +74 -0
  105. package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-protocol.js +302 -0
  106. package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-protocol.js.map +1 -0
  107. package/dist/server/modules/relay-tunnel/relay-tunnel-controller.d.ts +33 -0
  108. package/dist/server/modules/relay-tunnel/relay-tunnel-controller.js +57 -0
  109. package/dist/server/modules/relay-tunnel/relay-tunnel-controller.js.map +1 -0
  110. package/dist/server/modules/relay-tunnel/relay-tunnel-edge-proof.d.ts +9 -0
  111. package/dist/server/modules/relay-tunnel/relay-tunnel-edge-proof.js +25 -0
  112. package/dist/server/modules/relay-tunnel/relay-tunnel-edge-proof.js.map +1 -0
  113. package/dist/server/modules/relay-tunnel/relay-tunnel-gateway-service.d.ts +18 -0
  114. package/dist/server/modules/relay-tunnel/relay-tunnel-gateway-service.js +230 -0
  115. package/dist/server/modules/relay-tunnel/relay-tunnel-gateway-service.js.map +1 -0
  116. package/dist/server/modules/relay-tunnel/relay-tunnel-runtime-adapter.d.ts +41 -0
  117. package/dist/server/modules/relay-tunnel/relay-tunnel-runtime-adapter.js +443 -0
  118. package/dist/server/modules/relay-tunnel/relay-tunnel-runtime-adapter.js.map +1 -0
  119. package/dist/server/modules/relay-tunnel/relay-tunnel-service.d.ts +111 -0
  120. package/dist/server/modules/relay-tunnel/relay-tunnel-service.js +771 -0
  121. package/dist/server/modules/relay-tunnel/relay-tunnel-service.js.map +1 -0
  122. package/dist/server/modules/sessions/codex-app-server-helper-client.d.ts +2 -1
  123. package/dist/server/modules/sessions/codex-app-server-helper-client.js +78 -0
  124. package/dist/server/modules/sessions/codex-app-server-helper-client.js.map +1 -1
  125. package/dist/server/modules/sessions/codex-app-server-helper-process.js +84 -2
  126. package/dist/server/modules/sessions/codex-app-server-helper-process.js.map +1 -1
  127. package/dist/server/modules/sessions/provider-session-delete-cli.d.ts +15 -0
  128. package/dist/server/modules/sessions/provider-session-delete-cli.js +148 -0
  129. package/dist/server/modules/sessions/provider-session-delete-cli.js.map +1 -0
  130. package/dist/server/modules/sessions/session-controller.d.ts +4 -1
  131. package/dist/server/modules/sessions/session-controller.js +4 -0
  132. package/dist/server/modules/sessions/session-controller.js.map +1 -1
  133. package/dist/server/modules/sessions/session-history-service.d.ts +17 -0
  134. package/dist/server/modules/sessions/session-history-service.js +150 -1
  135. package/dist/server/modules/sessions/session-history-service.js.map +1 -1
  136. package/dist/server/modules/sessions/session-live-runtime-router-service.d.ts +25 -0
  137. package/dist/server/modules/sessions/session-live-runtime-router-service.js +42 -0
  138. package/dist/server/modules/sessions/session-live-runtime-router-service.js.map +1 -0
  139. package/dist/server/modules/sessions/session-live-runtime-service.js +34 -18
  140. package/dist/server/modules/sessions/session-live-runtime-service.js.map +1 -1
  141. package/dist/server/modules/sessions/session-message-attachment-service.d.ts +1 -0
  142. package/dist/server/modules/sessions/session-message-attachment-service.js +22 -0
  143. package/dist/server/modules/sessions/session-message-attachment-service.js.map +1 -1
  144. package/dist/server/modules/sessions/session-permission-request-service.d.ts +1 -0
  145. package/dist/server/modules/sessions/session-permission-request-service.js +200 -5
  146. package/dist/server/modules/sessions/session-permission-request-service.js.map +1 -1
  147. package/dist/server/modules/sessions/session-provider-error-mapper.js +32 -0
  148. package/dist/server/modules/sessions/session-provider-error-mapper.js.map +1 -1
  149. package/dist/server/modules/sessions/session-provider-usage-guard-service.d.ts +37 -0
  150. package/dist/server/modules/sessions/session-provider-usage-guard-service.js +179 -0
  151. package/dist/server/modules/sessions/session-provider-usage-guard-service.js.map +1 -0
  152. package/dist/server/modules/sessions/session-provider-usage-limit.d.ts +17 -0
  153. package/dist/server/modules/sessions/session-provider-usage-limit.js +465 -0
  154. package/dist/server/modules/sessions/session-provider-usage-limit.js.map +1 -0
  155. package/dist/server/modules/skills/assistant-runtime-skill-catalog.d.ts +8 -0
  156. package/dist/server/modules/skills/assistant-runtime-skill-catalog.js +26 -0
  157. package/dist/server/modules/skills/assistant-runtime-skill-catalog.js.map +1 -0
  158. package/dist/server/modules/skills/assistant-runtime-skill-cleanup.d.ts +9 -0
  159. package/dist/server/modules/skills/assistant-runtime-skill-cleanup.js +55 -0
  160. package/dist/server/modules/skills/assistant-runtime-skill-cleanup.js.map +1 -0
  161. package/dist/server/modules/skills/builtin-skill-service.js +1 -6
  162. package/dist/server/modules/skills/builtin-skill-service.js.map +1 -1
  163. package/dist/server/modules/skills/skill-controller.d.ts +2 -2
  164. package/dist/server/modules/skills/skill-controller.js +9 -1
  165. package/dist/server/modules/skills/skill-controller.js.map +1 -1
  166. package/dist/server/modules/skills/skill-manager-service.d.ts +26 -1
  167. package/dist/server/modules/skills/skill-manager-service.js +346 -90
  168. package/dist/server/modules/skills/skill-manager-service.js.map +1 -1
  169. package/dist/server/modules/skills/skill-name-policy.d.ts +2 -0
  170. package/dist/server/modules/skills/skill-name-policy.js +10 -0
  171. package/dist/server/modules/skills/skill-name-policy.js.map +1 -0
  172. package/dist/server/modules/tailscale/tailscale-service.d.ts +2 -0
  173. package/dist/server/modules/tailscale/tailscale-service.js +21 -8
  174. package/dist/server/modules/tailscale/tailscale-service.js.map +1 -1
  175. package/dist/server/modules/tasks/task-types.d.ts +3 -0
  176. package/dist/server/modules/tasks/task-types.js +3 -0
  177. package/dist/server/modules/tasks/task-types.js.map +1 -1
  178. package/dist/server/modules/terminal/template-reverse-proxy-service.js +71 -3
  179. package/dist/server/modules/terminal/template-reverse-proxy-service.js.map +1 -1
  180. package/dist/server/routes/assistant.js +30 -0
  181. package/dist/server/routes/assistant.js.map +1 -1
  182. package/dist/server/routes/auth.js +4 -0
  183. package/dist/server/routes/auth.js.map +1 -1
  184. package/dist/server/routes/sessions.js +1 -0
  185. package/dist/server/routes/sessions.js.map +1 -1
  186. package/dist/server/routes/system.d.ts +2 -1
  187. package/dist/server/routes/system.js +13 -1
  188. package/dist/server/routes/system.js.map +1 -1
  189. package/dist/server/server/create-server.d.ts +10 -0
  190. package/dist/server/server/create-server.js +82 -12
  191. package/dist/server/server/create-server.js.map +1 -1
  192. package/dist/server/shared/utils/tokens.d.ts +3 -1
  193. package/dist/server/shared/utils/tokens.js +9 -2
  194. package/dist/server/shared/utils/tokens.js.map +1 -1
  195. package/dist/server/storage/repositories/assistant-automation-task-repository.d.ts +2 -0
  196. package/dist/server/storage/repositories/assistant-automation-task-repository.js +8 -2
  197. package/dist/server/storage/repositories/assistant-automation-task-repository.js.map +1 -1
  198. package/dist/server/storage/repositories/assistant-sandbox-workspace-repository.d.ts +1 -0
  199. package/dist/server/storage/repositories/assistant-sandbox-workspace-repository.js +27 -0
  200. package/dist/server/storage/repositories/assistant-sandbox-workspace-repository.js.map +1 -1
  201. package/dist/server/storage/repositories/auth-device-repository.d.ts +22 -0
  202. package/dist/server/storage/repositories/auth-device-repository.js +97 -0
  203. package/dist/server/storage/repositories/auth-device-repository.js.map +1 -0
  204. package/dist/server/storage/repositories/auth-device-session-repository.d.ts +17 -0
  205. package/dist/server/storage/repositories/auth-device-session-repository.js +82 -0
  206. package/dist/server/storage/repositories/auth-device-session-repository.js.map +1 -0
  207. package/dist/server/storage/repositories/auth-login-event-repository.d.ts +9 -0
  208. package/dist/server/storage/repositories/auth-login-event-repository.js +53 -0
  209. package/dist/server/storage/repositories/auth-login-event-repository.js.map +1 -0
  210. package/dist/server/storage/repositories/auth-token-repository.d.ts +4 -0
  211. package/dist/server/storage/repositories/auth-token-repository.js +58 -5
  212. package/dist/server/storage/repositories/auth-token-repository.js.map +1 -1
  213. package/dist/server/storage/repositories/butler-follow-up-task-repository.js +21 -3
  214. package/dist/server/storage/repositories/butler-follow-up-task-repository.js.map +1 -1
  215. package/dist/server/storage/repositories/instance-relay-tunnel-identity-repository.d.ts +8 -0
  216. package/dist/server/storage/repositories/instance-relay-tunnel-identity-repository.js +52 -0
  217. package/dist/server/storage/repositories/instance-relay-tunnel-identity-repository.js.map +1 -0
  218. package/dist/server/storage/repositories/instance-relay-tunnel-repository.d.ts +10 -0
  219. package/dist/server/storage/repositories/instance-relay-tunnel-repository.js +153 -0
  220. package/dist/server/storage/repositories/instance-relay-tunnel-repository.js.map +1 -0
  221. package/dist/server/storage/repositories/instance-tailscale-repository.js +6 -3
  222. package/dist/server/storage/repositories/instance-tailscale-repository.js.map +1 -1
  223. package/dist/server/storage/repositories/managed-skill-repository.d.ts +2 -1
  224. package/dist/server/storage/repositories/managed-skill-repository.js +14 -4
  225. package/dist/server/storage/repositories/managed-skill-repository.js.map +1 -1
  226. package/dist/server/storage/repositories/session-message-attachment-repository.d.ts +2 -0
  227. package/dist/server/storage/repositories/session-message-attachment-repository.js +24 -0
  228. package/dist/server/storage/repositories/session-message-attachment-repository.js.map +1 -1
  229. package/dist/server/storage/sqlite/client.js +297 -2
  230. package/dist/server/storage/sqlite/client.js.map +1 -1
  231. package/dist/server/storage/sqlite/schema.sql +122 -4
  232. package/dist/server/types/domain.d.ts +82 -1
  233. package/dist/server/ws/workbench-ws-hub.js +99 -75
  234. package/dist/server/ws/workbench-ws-hub.js.map +1 -1
  235. package/dist/server/ws/ws-auth-guard.js +1 -4
  236. package/dist/server/ws/ws-auth-guard.js.map +1 -1
  237. package/dist/server/ws/ws-server.d.ts +1 -1
  238. package/dist/server/ws/ws-server.js.map +1 -1
  239. package/node_modules/@codingns/session-sync-core/dist/codex-resume-history.d.ts +1 -0
  240. package/node_modules/@codingns/session-sync-core/dist/codex-resume-history.js +80 -0
  241. package/node_modules/@codingns/session-sync-core/dist/codex-resume-history.js.map +1 -0
  242. package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.d.ts +1 -0
  243. package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.js +11 -1
  244. package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.js.map +1 -1
  245. package/node_modules/@codingns/session-sync-core/dist/providers/codex.d.ts +11 -0
  246. package/node_modules/@codingns/session-sync-core/dist/providers/codex.js +132 -21
  247. package/node_modules/@codingns/session-sync-core/dist/providers/codex.js.map +1 -1
  248. package/node_modules/@codingns/session-sync-core/dist/providers/gemini.d.ts +2 -0
  249. package/node_modules/@codingns/session-sync-core/dist/providers/gemini.js +53 -1
  250. package/node_modules/@codingns/session-sync-core/dist/providers/gemini.js.map +1 -1
  251. package/node_modules/@codingns/session-sync-core/dist/providers/kimi.d.ts +1 -0
  252. package/node_modules/@codingns/session-sync-core/dist/providers/kimi.js +10 -1
  253. package/node_modules/@codingns/session-sync-core/dist/providers/kimi.js.map +1 -1
  254. package/node_modules/@codingns/session-sync-core/dist/providers/opencode.d.ts +1 -0
  255. package/node_modules/@codingns/session-sync-core/dist/providers/opencode.js +30 -0
  256. package/node_modules/@codingns/session-sync-core/dist/providers/opencode.js.map +1 -1
  257. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.d.ts +5 -1
  258. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.js +145 -58
  259. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.js.map +1 -1
  260. package/node_modules/@codingns/session-sync-core/dist/services.d.ts +1 -0
  261. package/node_modules/@codingns/session-sync-core/dist/services.js +7 -0
  262. package/node_modules/@codingns/session-sync-core/dist/services.js.map +1 -1
  263. package/node_modules/@codingns/session-sync-core/dist/types.d.ts +2 -0
  264. package/package.json +1 -1
  265. package/scripts/postinstall.mjs +0 -33
  266. package/dist/public/assets/index-CSVhg7I8.js +0 -123
  267. package/dist/public/assets/index-Ce1VX19m.css +0 -1
@@ -69,6 +69,12 @@ const ASSISTANT_CAPABILITIES = [
69
69
  enabled: true,
70
70
  summary: "从指定会话或消息点 fork 新会话"
71
71
  },
72
+ {
73
+ name: "sessions.delete",
74
+ mode: "proxy_execute",
75
+ enabled: true,
76
+ summary: "删除指定真实会话"
77
+ },
72
78
  {
73
79
  name: "automations.list",
74
80
  mode: "read",
@@ -99,6 +105,48 @@ const ASSISTANT_CAPABILITIES = [
99
105
  enabled: true,
100
106
  summary: "读取助手自动化执行记录"
101
107
  },
108
+ {
109
+ name: "follow-ups.list",
110
+ mode: "read",
111
+ enabled: true,
112
+ summary: "列出当前助手可见的会话跟进任务"
113
+ },
114
+ {
115
+ name: "follow-ups.get",
116
+ mode: "read",
117
+ enabled: true,
118
+ summary: "读取单个会话跟进任务详情"
119
+ },
120
+ {
121
+ name: "follow-ups.create",
122
+ mode: "proxy_execute",
123
+ enabled: true,
124
+ summary: "创建新的会话跟进任务"
125
+ },
126
+ {
127
+ name: "follow-ups.continue",
128
+ mode: "proxy_execute",
129
+ enabled: true,
130
+ summary: "回写继续推进结论并安排下一轮跟进"
131
+ },
132
+ {
133
+ name: "follow-ups.waiting-user",
134
+ mode: "proxy_execute",
135
+ enabled: true,
136
+ summary: "回写需要等待用户决策的跟进结论"
137
+ },
138
+ {
139
+ name: "follow-ups.complete",
140
+ mode: "proxy_execute",
141
+ enabled: true,
142
+ summary: "回写跟进任务已完成"
143
+ },
144
+ {
145
+ name: "follow-ups.fail",
146
+ mode: "proxy_execute",
147
+ enabled: true,
148
+ summary: "回写跟进任务失败"
149
+ },
102
150
  {
103
151
  name: "sandboxes.list",
104
152
  mode: "read",
@@ -333,7 +381,8 @@ export class AssistantCapabilityService {
333
381
  worktreeMergeService;
334
382
  worktreeCleanupService;
335
383
  sessionMessageOriginRepository;
336
- constructor(butlerProjectService, butlerSessionService, butlerControlSessionService, assistantAutomationService, assistantSandboxService, butlerControlTimerService, sessionHistoryService, sessionLiveRuntimeService, terminalService, debugTargetService, workspaceService, worktreeManager, worktreeSyncService, worktreeMergeService, worktreeCleanupService, sessionMessageOriginRepository = null) {
384
+ butlerFollowUpService;
385
+ constructor(butlerProjectService, butlerSessionService, butlerControlSessionService, assistantAutomationService, assistantSandboxService, butlerControlTimerService, sessionHistoryService, sessionLiveRuntimeService, terminalService, debugTargetService, workspaceService, worktreeManager, worktreeSyncService, worktreeMergeService, worktreeCleanupService, sessionMessageOriginRepository = null, butlerFollowUpService = null) {
337
386
  this.butlerProjectService = butlerProjectService;
338
387
  this.butlerSessionService = butlerSessionService;
339
388
  this.butlerControlSessionService = butlerControlSessionService;
@@ -350,6 +399,7 @@ export class AssistantCapabilityService {
350
399
  this.worktreeMergeService = worktreeMergeService;
351
400
  this.worktreeCleanupService = worktreeCleanupService;
352
401
  this.sessionMessageOriginRepository = sessionMessageOriginRepository;
402
+ this.butlerFollowUpService = butlerFollowUpService;
353
403
  }
354
404
  listCapabilities() {
355
405
  return this.createReceipt("capabilities.list", {
@@ -542,6 +592,16 @@ export class AssistantCapabilityService {
542
592
  session
543
593
  });
544
594
  }
595
+ async deleteSession(sessionId, userId) {
596
+ await this.sessionHistoryService.deleteSession(sessionId, userId);
597
+ return this.createReceipt("sessions.delete", {
598
+ kind: "session",
599
+ id: sessionId
600
+ }, {
601
+ sessionId,
602
+ deleted: true
603
+ });
604
+ }
545
605
  listTimers(input) {
546
606
  const items = this.butlerControlTimerService.listTimers({
547
607
  userId: input.userId,
@@ -666,6 +726,108 @@ export class AssistantCapabilityService {
666
726
  items
667
727
  });
668
728
  }
729
+ listFollowUps(input) {
730
+ const service = this.requireFollowUpService();
731
+ const items = service.listTasks({
732
+ statuses: input.status ? [input.status] : undefined,
733
+ projectId: input.projectId ?? undefined,
734
+ sessionId: input.sessionId ?? undefined,
735
+ limit: input.limit ?? undefined
736
+ });
737
+ return this.createReceipt("follow-ups.list", {
738
+ kind: "none",
739
+ id: null
740
+ }, {
741
+ items
742
+ });
743
+ }
744
+ getFollowUp(taskId) {
745
+ const service = this.requireFollowUpService();
746
+ const task = service.getTask(taskId);
747
+ return this.createReceipt("follow-ups.get", {
748
+ kind: "follow_up",
749
+ id: taskId
750
+ }, {
751
+ task
752
+ });
753
+ }
754
+ async createFollowUp(input) {
755
+ const service = this.requireFollowUpService();
756
+ const providerId = input.providerId ?? this.butlerControlSessionService.getCurrentSession(input.userId)?.providerId;
757
+ if (!providerId) {
758
+ throw new AppError({
759
+ statusCode: 409,
760
+ errorCode: "ASSISTANT_CONTROL_SESSION_NOT_FOUND",
761
+ detail: "当前没有可用的助手控制会话,无法继承默认 provider"
762
+ });
763
+ }
764
+ const task = await service.createTask({
765
+ projectId: input.projectId,
766
+ butlerSessionId: input.butlerSessionId,
767
+ providerId,
768
+ objective: input.objective,
769
+ completionCriteria: input.completionCriteria ?? undefined,
770
+ maxAutoContinueCount: input.maxAutoContinueCount ?? undefined,
771
+ checkIntervalSeconds: input.checkIntervalSeconds ?? undefined
772
+ }, input.userId);
773
+ return this.createReceipt("follow-ups.create", {
774
+ kind: "follow_up",
775
+ id: task.id
776
+ }, {
777
+ task
778
+ });
779
+ }
780
+ async continueFollowUp(input) {
781
+ const service = this.requireFollowUpService();
782
+ const task = await service.continueTask(input.taskId, {
783
+ summary: input.summary,
784
+ continuePrompt: input.continuePrompt
785
+ }, input.userId);
786
+ return this.createReceipt("follow-ups.continue", {
787
+ kind: "follow_up",
788
+ id: input.taskId
789
+ }, {
790
+ task
791
+ });
792
+ }
793
+ async markFollowUpWaitingUser(input) {
794
+ const service = this.requireFollowUpService();
795
+ const task = await service.markTaskWaitingUser(input.taskId, {
796
+ summary: input.summary,
797
+ waitingReason: input.waitingReason
798
+ }, input.userId);
799
+ return this.createReceipt("follow-ups.waiting-user", {
800
+ kind: "follow_up",
801
+ id: input.taskId
802
+ }, {
803
+ task
804
+ });
805
+ }
806
+ async completeFollowUp(input) {
807
+ const service = this.requireFollowUpService();
808
+ const task = await service.completeTask(input.taskId, {
809
+ summary: input.summary
810
+ }, input.userId);
811
+ return this.createReceipt("follow-ups.complete", {
812
+ kind: "follow_up",
813
+ id: input.taskId
814
+ }, {
815
+ task
816
+ });
817
+ }
818
+ async failFollowUp(input) {
819
+ const service = this.requireFollowUpService();
820
+ const task = await service.failTask(input.taskId, {
821
+ summary: input.summary,
822
+ reason: input.reason ?? null
823
+ }, input.userId);
824
+ return this.createReceipt("follow-ups.fail", {
825
+ kind: "follow_up",
826
+ id: input.taskId
827
+ }, {
828
+ task
829
+ });
830
+ }
669
831
  listSandboxes(input) {
670
832
  const items = this.assistantSandboxService.listSandboxes({
671
833
  userId: input.userId,
@@ -1043,6 +1205,16 @@ export class AssistantCapabilityService {
1043
1205
  payload
1044
1206
  };
1045
1207
  }
1208
+ requireFollowUpService() {
1209
+ if (this.butlerFollowUpService) {
1210
+ return this.butlerFollowUpService;
1211
+ }
1212
+ throw new AppError({
1213
+ statusCode: 503,
1214
+ errorCode: "ASSISTANT_FOLLOW_UP_CAPABILITY_UNAVAILABLE",
1215
+ detail: "当前实例没有启用会话跟进能力"
1216
+ });
1217
+ }
1046
1218
  resolveSessionLaunchConfig(input) {
1047
1219
  const controlSession = this.butlerControlSessionService.getCurrentSession(input.userId);
1048
1220
  const providerId = input.providerId?.trim()
@@ -1 +1 @@
1
- {"version":3,"file":"assistant-capability-service.js","sourceRoot":"","sources":["../../../../src/modules/assistant-capability/assistant-capability-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"assistant-capability-service.js","sourceRoot":"","sources":["../../../../src/modules/assistant-capability/assistant-capability-service.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { FastifyReply, FastifyRequest } from "fastify";
2
- import type { AuthService, LoginInput, LogoutInput, RefreshInput } from "./auth-service.js";
2
+ import type { AuthService, LoginInput, LogoutInput, RefreshInput, UpdateCurrentDevicePrimaryInput } from "./auth-service.js";
3
3
  export declare class AuthController {
4
4
  private readonly authService;
5
5
  constructor(authService: AuthService);
@@ -12,4 +12,14 @@ export declare class AuthController {
12
12
  readonly logout: (request: FastifyRequest<{
13
13
  Body: LogoutInput;
14
14
  }>, reply: FastifyReply) => Promise<void>;
15
+ readonly getDevices: (request: FastifyRequest, reply: FastifyReply) => Promise<void>;
16
+ readonly updateCurrentDevicePrimary: (request: FastifyRequest<{
17
+ Body: UpdateCurrentDevicePrimaryInput;
18
+ }>, reply: FastifyReply) => Promise<void>;
19
+ readonly logoutOtherDevices: (request: FastifyRequest, reply: FastifyReply) => Promise<void>;
20
+ readonly logoutDevice: (request: FastifyRequest<{
21
+ Params: {
22
+ deviceId: string;
23
+ };
24
+ }>, reply: FastifyReply) => Promise<void>;
15
25
  }
@@ -1,13 +1,14 @@
1
+ import { resolveAuthDeviceDisplayName } from "./auth-device-display-name.js";
1
2
  export class AuthController {
2
3
  authService;
3
4
  constructor(authService) {
4
5
  this.authService = authService;
5
6
  }
6
7
  login = async (request, reply) => {
7
- reply.send(this.authService.login(request.body));
8
+ reply.send(this.authService.login(request.body, readAuthRequestMetadata(request)));
8
9
  };
9
10
  refresh = async (request, reply) => {
10
- reply.send(this.authService.refresh(request.body));
11
+ reply.send(this.authService.refresh(request.body, readAuthRequestMetadata(request)));
11
12
  };
12
13
  logout = async (request, reply) => {
13
14
  const accessToken = request.auth?.accessToken;
@@ -16,5 +17,63 @@ export class AuthController {
16
17
  }
17
18
  reply.send(this.authService.logout(accessToken, request.body));
18
19
  };
20
+ getDevices = async (request, reply) => {
21
+ reply.send(this.authService.listDeviceManagement(requireAuthContext(request)));
22
+ };
23
+ updateCurrentDevicePrimary = async (request, reply) => {
24
+ reply.send(this.authService.updateCurrentDevicePrimary(requireAuthContext(request), request.body));
25
+ };
26
+ logoutOtherDevices = async (request, reply) => {
27
+ reply.send(this.authService.logoutOtherDevices(requireAuthContext(request)));
28
+ };
29
+ logoutDevice = async (request, reply) => {
30
+ reply.send(this.authService.logoutDevice(requireAuthContext(request), request.params.deviceId));
31
+ };
32
+ }
33
+ const CLIENT_TYPE_HEADER = "x-codingns-client-type";
34
+ const CLIENT_INSTANCE_ID_HEADER = "x-codingns-client-instance-id";
35
+ function readAuthRequestMetadata(request) {
36
+ const clientType = normalizeClientType(request.headers[CLIENT_TYPE_HEADER]);
37
+ const userAgent = readUserAgent(request);
38
+ return {
39
+ clientType,
40
+ clientInstanceId: normalizeClientInstanceId(request.headers[CLIENT_INSTANCE_ID_HEADER]),
41
+ displayName: resolveAuthDeviceDisplayName(clientType, userAgent),
42
+ sourceAddress: readSourceAddress(request),
43
+ userAgent
44
+ };
45
+ }
46
+ function normalizeClientType(raw) {
47
+ const value = (Array.isArray(raw) ? raw[0] : raw)?.trim().toLowerCase();
48
+ if (value === "desktop"
49
+ || value === "web"
50
+ || value === "ios"
51
+ || value === "android") {
52
+ return value;
53
+ }
54
+ return "unknown";
55
+ }
56
+ function normalizeClientInstanceId(raw) {
57
+ const value = (Array.isArray(raw) ? raw[0] : raw)?.trim();
58
+ return value ? value : null;
59
+ }
60
+ function readSourceAddress(request) {
61
+ const forwarded = request.headers["x-forwarded-for"];
62
+ const forwardedValue = Array.isArray(forwarded) ? forwarded[0] : forwarded;
63
+ if (typeof forwardedValue === "string" && forwardedValue.trim().length > 0) {
64
+ return forwardedValue.split(",")[0]?.trim() || null;
65
+ }
66
+ return request.ip?.trim() || null;
67
+ }
68
+ function readUserAgent(request) {
69
+ const userAgent = request.headers["user-agent"];
70
+ const value = Array.isArray(userAgent) ? userAgent[0] : userAgent;
71
+ return typeof value === "string" && value.trim().length > 0 ? value.trim() : null;
72
+ }
73
+ function requireAuthContext(request) {
74
+ if (!request.auth) {
75
+ throw new Error("缺少登录态上下文");
76
+ }
77
+ return request.auth;
19
78
  }
20
79
  //# sourceMappingURL=auth-controller.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth-controller.js","sourceRoot":"","sources":["../../../../src/modules/auth/auth-controller.ts"],"names":[],"mappings":"AASA,MAAM,OAAO,cAAc;IACI;IAA7B,YAA6B,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;IAAG,CAAC;IAEhD,KAAK,GAAG,KAAK,EACpB,OAA6C,EAC7C,KAAmB,EACJ,EAAE;QACjB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACnD,CAAC,CAAC;IAEO,OAAO,GAAG,KAAK,EACtB,OAA+C,EAC/C,KAAmB,EACJ,EAAE;QACjB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACrD,CAAC,CAAC;IAEO,MAAM,GAAG,KAAK,EACrB,OAA8C,EAC9C,KAAmB,EACJ,EAAE;QACjB,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC;QAE9C,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACzC,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACjE,CAAC,CAAC;CACH"}
1
+ {"version":3,"file":"auth-controller.js","sourceRoot":"","sources":["../../../../src/modules/auth/auth-controller.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAE7E,MAAM,OAAO,cAAc;IACI;IAA7B,YAA6B,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;IAAG,CAAC;IAEhD,KAAK,GAAG,KAAK,EACpB,OAA6C,EAC7C,KAAmB,EACJ,EAAE;QACjB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACrF,CAAC,CAAC;IAEO,OAAO,GAAG,KAAK,EACtB,OAA+C,EAC/C,KAAmB,EACJ,EAAE;QACjB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,uBAAuB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACvF,CAAC,CAAC;IAEO,MAAM,GAAG,KAAK,EACrB,OAA8C,EAC9C,KAAmB,EACJ,EAAE;QACjB,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC;QAE9C,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACzC,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACjE,CAAC,CAAC;IAEO,UAAU,GAAG,KAAK,EAAE,OAAuB,EAAE,KAAmB,EAAiB,EAAE;QAC1F,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACjF,CAAC,CAAC;IAEO,0BAA0B,GAAG,KAAK,EACzC,OAAkE,EAClE,KAAmB,EACJ,EAAE;QACjB,KAAK,CAAC,IAAI,CACR,IAAI,CAAC,WAAW,CAAC,0BAA0B,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CACvF,CAAC;IACJ,CAAC,CAAC;IAEO,kBAAkB,GAAG,KAAK,EACjC,OAAuB,EACvB,KAAmB,EACJ,EAAE;QACjB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC/E,CAAC,CAAC;IAEO,YAAY,GAAG,KAAK,EAC3B,OAAyD,EACzD,KAAmB,EACJ,EAAE;QACjB,KAAK,CAAC,IAAI,CACR,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CACpF,CAAC;IACJ,CAAC,CAAC;CACH;AAED,MAAM,kBAAkB,GAAG,wBAAwB,CAAC;AACpD,MAAM,yBAAyB,GAAG,+BAA+B,CAAC;AAElE,SAAS,uBAAuB,CAAC,OAAuB;IAOtD,MAAM,UAAU,GAAG,mBAAmB,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAC5E,MAAM,SAAS,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IAEzC,OAAO;QACL,UAAU;QACV,gBAAgB,EAAE,yBAAyB,CAAC,OAAO,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;QACvF,WAAW,EAAE,4BAA4B,CAAC,UAAU,EAAE,SAAS,CAAC;QAChE,aAAa,EAAE,iBAAiB,CAAC,OAAO,CAAC;QACzC,SAAS;KACV,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAkC;IAC7D,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAExE,IACE,KAAK,KAAK,SAAS;WAChB,KAAK,KAAK,KAAK;WACf,KAAK,KAAK,KAAK;WACf,KAAK,KAAK,SAAS,EACtB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,yBAAyB,CAAC,GAAkC;IACnE,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC;IAC1D,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AAC9B,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAuB;IAChD,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACrD,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAE3E,IAAI,OAAO,cAAc,KAAK,QAAQ,IAAI,cAAc,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3E,OAAO,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC;IACtD,CAAC;IAED,OAAO,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC;AACpC,CAAC;AAED,SAAS,aAAa,CAAC,OAAuB;IAC5C,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAChD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACpF,CAAC;AAED,SAAS,kBAAkB,CAAC,OAAuB;IACjD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,OAAO,CAAC,IAAI,CAAC;AACtB,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { AuthClientType } from "../../types/domain.js";
2
+ export interface ResolvedAuthDeviceInfo {
3
+ displayName: string | null;
4
+ browserName: string | null;
5
+ browserVersion: string | null;
6
+ osName: string | null;
7
+ osVersion: string | null;
8
+ }
9
+ export declare function resolveAuthDeviceInfo(clientType: AuthClientType, userAgent: string | null | undefined): ResolvedAuthDeviceInfo;
10
+ export declare function resolveAuthDeviceDisplayName(clientType: AuthClientType, userAgent: string | null | undefined): string | null;