@clinebot/core 0.0.37 → 0.0.38

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 (617) hide show
  1. package/README.md +11 -1
  2. package/dist/ClineCore.d.ts +18 -214
  3. package/dist/account/cline-account-service.d.ts +0 -1
  4. package/dist/account/index.d.ts +0 -1
  5. package/dist/account/rpc.d.ts +0 -1
  6. package/dist/account/types.d.ts +0 -1
  7. package/dist/auth/bounded-ttl-cache.d.ts +0 -1
  8. package/dist/auth/client.d.ts +0 -1
  9. package/dist/auth/cline.d.ts +0 -5
  10. package/dist/auth/codex.d.ts +0 -1
  11. package/dist/auth/oca.d.ts +0 -1
  12. package/dist/auth/server.d.ts +0 -1
  13. package/dist/auth/types.d.ts +0 -1
  14. package/dist/auth/utils.d.ts +0 -1
  15. package/dist/cline-core/automation.d.ts +34 -0
  16. package/dist/cline-core/runtime-services.d.ts +5 -0
  17. package/dist/cline-core/start-input.d.ts +10 -0
  18. package/dist/cline-core/telemetry.d.ts +10 -0
  19. package/dist/cline-core/types.d.ts +221 -0
  20. package/dist/cron/{cron-event-ingress.d.ts → events/cron-event-ingress.d.ts} +1 -2
  21. package/dist/cron/{cron-report-writer.d.ts → reports/cron-report-writer.d.ts} +1 -2
  22. package/dist/cron/{cron-materializer.d.ts → runner/cron-materializer.d.ts} +1 -2
  23. package/dist/cron/{cron-runner.d.ts → runner/cron-runner.d.ts} +6 -4
  24. package/dist/cron/{resource-limiter.d.ts → runner/resource-limiter.d.ts} +0 -1
  25. package/dist/cron/schedule/scheduler.d.ts +12 -0
  26. package/dist/cron/{cron-service.d.ts → service/cron-service.d.ts} +4 -5
  27. package/dist/cron/{schedule-command-service.d.ts → service/schedule-command-service.d.ts} +0 -1
  28. package/dist/cron/{schedule-service.d.ts → service/schedule-service.d.ts} +20 -22
  29. package/dist/cron/{cron-reconciler.d.ts → specs/cron-reconciler.d.ts} +1 -2
  30. package/dist/cron/{cron-spec-parser.d.ts → specs/cron-spec-parser.d.ts} +0 -1
  31. package/dist/cron/{cron-watcher.d.ts → specs/cron-watcher.d.ts} +0 -1
  32. package/dist/cron/{cron-schema.d.ts → store/cron-schema.d.ts} +0 -1
  33. package/dist/cron/{sqlite-cron-store.d.ts → store/sqlite-cron-store.d.ts} +12 -2
  34. package/dist/extensions/config/index.d.ts +4 -7
  35. package/dist/extensions/config/runtime-commands.d.ts +0 -1
  36. package/dist/extensions/config/skill-frontmatter-toggle.d.ts +11 -0
  37. package/dist/extensions/config/unified-config-file-watcher.d.ts +0 -1
  38. package/dist/extensions/config/user-instruction-config-loader.d.ts +0 -1
  39. package/dist/extensions/config/user-instruction-plugin.d.ts +25 -0
  40. package/dist/extensions/config/user-instruction-service.d.ts +23 -0
  41. package/dist/extensions/context/agentic-compaction.d.ts +0 -1
  42. package/dist/extensions/context/basic-compaction.d.ts +0 -1
  43. package/dist/extensions/context/compaction-shared.d.ts +0 -1
  44. package/dist/extensions/context/compaction.d.ts +0 -1
  45. package/dist/extensions/index.d.ts +0 -1
  46. package/dist/extensions/mcp/client.d.ts +0 -1
  47. package/dist/extensions/mcp/config-loader.d.ts +0 -1
  48. package/dist/extensions/mcp/index.d.ts +0 -1
  49. package/dist/extensions/mcp/manager.d.ts +0 -1
  50. package/dist/extensions/mcp/name-transform.d.ts +0 -1
  51. package/dist/extensions/mcp/policies.d.ts +0 -1
  52. package/dist/extensions/mcp/tools.d.ts +2 -3
  53. package/dist/extensions/mcp/types.d.ts +3 -4
  54. package/dist/extensions/plugin/plugin-config-loader.d.ts +0 -1
  55. package/dist/extensions/plugin/plugin-load-report.d.ts +0 -1
  56. package/dist/extensions/plugin/plugin-loader.d.ts +0 -1
  57. package/dist/extensions/plugin/plugin-module-import.d.ts +0 -1
  58. package/dist/extensions/plugin/plugin-sandbox.d.ts +0 -1
  59. package/dist/extensions/plugin/plugin-targeting.d.ts +0 -1
  60. package/dist/extensions/plugin-sandbox-bootstrap.js +1 -446
  61. package/dist/extensions/tools/constants.d.ts +0 -1
  62. package/dist/extensions/tools/definitions.d.ts +13 -14
  63. package/dist/extensions/tools/executors/apply-patch-parser.d.ts +0 -1
  64. package/dist/extensions/tools/executors/apply-patch.d.ts +0 -1
  65. package/dist/extensions/tools/executors/bash.d.ts +0 -1
  66. package/dist/extensions/tools/executors/editor.d.ts +0 -1
  67. package/dist/extensions/tools/executors/file-read.d.ts +0 -1
  68. package/dist/extensions/tools/executors/index.d.ts +0 -1
  69. package/dist/extensions/tools/executors/search.d.ts +0 -1
  70. package/dist/extensions/tools/executors/web-fetch.d.ts +0 -1
  71. package/dist/extensions/tools/helpers.d.ts +0 -1
  72. package/dist/extensions/tools/index.d.ts +2 -3
  73. package/dist/extensions/tools/model-tool-routing.d.ts +0 -1
  74. package/dist/extensions/tools/presets.d.ts +4 -5
  75. package/dist/extensions/tools/runtime.d.ts +0 -1
  76. package/dist/extensions/tools/schemas.d.ts +0 -1
  77. package/dist/extensions/tools/team/delegated-agent.d.ts +3 -4
  78. package/dist/extensions/tools/team/index.d.ts +0 -1
  79. package/dist/extensions/tools/team/multi-agent.d.ts +1 -2
  80. package/dist/extensions/tools/team/projections.d.ts +0 -1
  81. package/dist/extensions/tools/team/runtime.d.ts +0 -1
  82. package/dist/extensions/tools/team/spawn-agent-tool.d.ts +4 -5
  83. package/dist/extensions/tools/team/subagent-prompts.d.ts +0 -1
  84. package/dist/extensions/tools/team/team-tools.d.ts +7 -8
  85. package/dist/extensions/tools/types.d.ts +11 -12
  86. package/dist/hooks/checkpoint-hooks.d.ts +9 -2
  87. package/dist/hooks/hook-extension.d.ts +2 -0
  88. package/dist/{extensions/config/hooks-config-loader.d.ts → hooks/hook-file-config.d.ts} +1 -2
  89. package/dist/hooks/hook-file-hooks.d.ts +2 -2
  90. package/dist/hooks/index.d.ts +3 -1
  91. package/dist/hooks/subprocess-runner.d.ts +0 -1
  92. package/dist/hooks/subprocess.d.ts +0 -1
  93. package/dist/hub/{connect.d.ts → client/connect.d.ts} +1 -2
  94. package/dist/hub/{client.d.ts → client/index.d.ts} +41 -4
  95. package/dist/hub/{session-client.d.ts → client/session-client.d.ts} +41 -13
  96. package/dist/hub/{ui-client.d.ts → client/ui-client.d.ts} +1 -1
  97. package/dist/hub/daemon/entry.d.ts +1 -0
  98. package/dist/hub/daemon/entry.js +720 -0
  99. package/dist/hub/{daemon.d.ts → daemon/index.d.ts} +6 -3
  100. package/dist/hub/{runtime-handlers.d.ts → daemon/runtime-handlers.d.ts} +3 -2
  101. package/dist/hub/{start-shared-server.d.ts → daemon/start-shared-server.d.ts} +1 -2
  102. package/dist/hub/{defaults.d.ts → discovery/defaults.d.ts} +0 -1
  103. package/dist/hub/{discovery.d.ts → discovery/index.d.ts} +2 -1
  104. package/dist/hub/{workspace.d.ts → discovery/workspace.d.ts} +1 -2
  105. package/dist/hub/index.d.ts +28 -11
  106. package/dist/hub/index.js +484 -1061
  107. package/dist/hub/runtime-host/hub-runtime-host.d.ts +73 -0
  108. package/dist/{transports/remote.d.ts → hub/runtime-host/remote-runtime-host.d.ts} +1 -2
  109. package/dist/hub/{browser-websocket.d.ts → server/browser-websocket.d.ts} +1 -2
  110. package/dist/hub/{transport.d.ts → server/command-transport.d.ts} +0 -1
  111. package/dist/hub/server/handlers/approval-handlers.d.ts +17 -0
  112. package/dist/hub/server/handlers/capability-handlers.d.ts +12 -0
  113. package/dist/hub/server/handlers/client-handlers.d.ts +6 -0
  114. package/dist/hub/server/handlers/context.d.ts +56 -0
  115. package/dist/hub/server/handlers/run-handlers.d.ts +5 -0
  116. package/dist/hub/server/handlers/session-event-projector.d.ts +7 -0
  117. package/dist/hub/server/handlers/session-handlers.d.ts +20 -0
  118. package/dist/hub/server/hub-client-contributions.d.ts +19 -0
  119. package/dist/hub/server/hub-notifications.d.ts +7 -0
  120. package/dist/hub/server/hub-schedule-events.d.ts +2 -0
  121. package/dist/hub/server/hub-server-logging.d.ts +2 -0
  122. package/dist/hub/server/hub-server-options.d.ts +55 -0
  123. package/dist/hub/server/hub-server-transport.d.ts +34 -0
  124. package/dist/hub/server/hub-session-records.d.ts +8 -0
  125. package/dist/hub/server/hub-websocket-server.d.ts +6 -0
  126. package/dist/hub/server/index.d.ts +4 -0
  127. package/dist/hub/{native-transport.d.ts → server/native-transport.d.ts} +1 -2
  128. package/dist/index.d.ts +51 -41
  129. package/dist/index.js +214 -872
  130. package/dist/runtime/capabilities/index.d.ts +2 -0
  131. package/dist/runtime/capabilities/normalize-runtime-capabilities.d.ts +2 -0
  132. package/dist/runtime/capabilities/runtime-capabilities.d.ts +6 -0
  133. package/dist/runtime/config/agent-message-codec.d.ts +6 -0
  134. package/dist/runtime/{agent-runtime-config-builder.d.ts → config/agent-runtime-config-builder.d.ts} +12 -21
  135. package/dist/runtime/host/history.d.ts +18 -0
  136. package/dist/runtime/{host.d.ts → host/host.d.ts} +3 -4
  137. package/dist/runtime/host/local/agent-event-bridge.d.ts +29 -0
  138. package/dist/runtime/host/local/session-record.d.ts +6 -0
  139. package/dist/runtime/host/local/session-service-invoker.d.ts +4 -0
  140. package/dist/runtime/host/local/spawn-tool.d.ts +15 -0
  141. package/dist/runtime/host/local/user-files.d.ts +1 -0
  142. package/dist/runtime/host/local-runtime-host.d.ts +118 -0
  143. package/dist/{transports → runtime/host}/runtime-host-support.d.ts +3 -5
  144. package/dist/runtime/{runtime-host.d.ts → host/runtime-host.d.ts} +66 -31
  145. package/dist/runtime/{runtime-builder.d.ts → orchestration/runtime-builder.d.ts} +0 -1
  146. package/dist/runtime/{runtime-event-adapter.d.ts → orchestration/runtime-event-adapter.d.ts} +0 -1
  147. package/dist/runtime/{runtime-oauth-token-manager.d.ts → orchestration/runtime-oauth-token-manager.d.ts} +1 -2
  148. package/dist/runtime/{session-runtime-orchestrator.d.ts → orchestration/session-runtime-orchestrator.d.ts} +20 -63
  149. package/dist/runtime/{session-runtime.d.ts → orchestration/session-runtime.d.ts} +14 -12
  150. package/dist/runtime/{user-input-builder.d.ts → orchestration/user-input-builder.d.ts} +2 -11
  151. package/dist/runtime/{loop-detection.d.ts → safety/loop-detection.d.ts} +0 -1
  152. package/dist/runtime/{mistake-tracker.d.ts → safety/mistake-tracker.d.ts} +0 -1
  153. package/dist/runtime/{rules.d.ts → safety/rules.d.ts} +1 -2
  154. package/dist/runtime/{subprocess-sandbox.d.ts → tools/subprocess-sandbox.d.ts} +15 -1
  155. package/dist/runtime/{tool-approval.d.ts → tools/tool-approval.d.ts} +0 -1
  156. package/dist/runtime/turn-queue/pending-prompt-service.d.ts +64 -0
  157. package/dist/services/agent-events.d.ts +1 -2
  158. package/dist/services/config.d.ts +0 -1
  159. package/dist/services/global-settings.d.ts +27 -5
  160. package/dist/{llms → services/llms}/cline-recommended-models.d.ts +1 -2
  161. package/dist/{llms → services/llms}/configured-provider-registry.d.ts +0 -1
  162. package/dist/services/llms/handler-factory.d.ts +3 -0
  163. package/dist/{llms → services/llms}/provider-defaults.d.ts +2 -1
  164. package/dist/{llms → services/llms}/provider-settings.d.ts +5 -3
  165. package/dist/{llms → services/llms}/runtime-config.d.ts +0 -1
  166. package/dist/{llms → services/llms}/runtime-registry.d.ts +0 -1
  167. package/dist/{llms → services/llms}/runtime-types.d.ts +0 -1
  168. package/dist/services/local-runtime-bootstrap.d.ts +7 -9
  169. package/dist/services/plugin-tools.d.ts +0 -1
  170. package/dist/services/providers/local-provider-registry.d.ts +9 -10
  171. package/dist/services/providers/local-provider-service.d.ts +36 -3
  172. package/dist/services/providers/model-source.d.ts +3 -0
  173. package/dist/services/session-artifacts.d.ts +0 -1
  174. package/dist/services/session-data.d.ts +2 -3
  175. package/dist/services/session-telemetry.d.ts +0 -1
  176. package/dist/services/storage/file-team-store.d.ts +0 -1
  177. package/dist/services/storage/provider-settings-legacy-migration.d.ts +0 -1
  178. package/dist/services/storage/provider-settings-manager.d.ts +3 -4
  179. package/dist/services/storage/sqlite-session-store.d.ts +0 -1
  180. package/dist/services/storage/sqlite-team-store.d.ts +0 -1
  181. package/dist/services/storage/team-store.d.ts +0 -1
  182. package/dist/services/telemetry/ITelemetryAdapter.d.ts +0 -1
  183. package/dist/services/telemetry/OpenTelemetryAdapter.d.ts +0 -1
  184. package/dist/services/telemetry/OpenTelemetryProvider.d.ts +32 -1
  185. package/dist/services/telemetry/TelemetryLoggerSink.d.ts +0 -1
  186. package/dist/services/telemetry/TelemetryService.d.ts +0 -1
  187. package/dist/services/telemetry/core-events.d.ts +46 -3
  188. package/dist/services/telemetry/distinct-id.d.ts +0 -1
  189. package/dist/services/telemetry/index.d.ts +1 -2
  190. package/dist/services/telemetry/index.js +1 -0
  191. package/dist/services/usage.d.ts +10 -2
  192. package/dist/services/workspace/file-indexer.d.ts +0 -1
  193. package/dist/services/workspace/index.d.ts +0 -1
  194. package/dist/services/workspace/mention-enricher.d.ts +0 -1
  195. package/dist/{session → services/workspace}/workspace-manager.d.ts +0 -1
  196. package/dist/services/{workspace-manifest.d.ts → workspace/workspace-manifest.d.ts} +20 -5
  197. package/dist/services/workspace/workspace-telemetry.d.ts +18 -0
  198. package/dist/session/checkpoint-restore.d.ts +20 -0
  199. package/dist/session/{session-graph.d.ts → models/session-graph.d.ts} +2 -3
  200. package/dist/session/{session-manifest.d.ts → models/session-manifest.d.ts} +0 -1
  201. package/dist/session/{session-row.d.ts → models/session-row.d.ts} +2 -3
  202. package/dist/session/{file-session-service.d.ts → services/file-session-service.d.ts} +1 -2
  203. package/dist/session/{message-builder.d.ts → services/message-builder.d.ts} +7 -16
  204. package/dist/session/{persistence-service.d.ts → services/persistence-service.d.ts} +10 -11
  205. package/dist/session/{session-service.d.ts → services/session-service.d.ts} +4 -5
  206. package/dist/session/session-snapshot.d.ts +57 -0
  207. package/dist/session/session-versioning-service.d.ts +48 -0
  208. package/dist/session/{conversation-store.d.ts → stores/conversation-store.d.ts} +0 -1
  209. package/dist/session/{session-manifest-store.d.ts → stores/session-manifest-store.d.ts} +3 -4
  210. package/dist/session/{team-persistence-store.d.ts → stores/team-persistence-store.d.ts} +2 -3
  211. package/dist/session/team/index.d.ts +2 -0
  212. package/dist/session/{subagent-session-manager.d.ts → team/team-child-session-manager.d.ts} +7 -8
  213. package/dist/session/{session-team-coordination.d.ts → team/team-session-coordinator.d.ts} +3 -4
  214. package/dist/settings/index.d.ts +2 -0
  215. package/dist/settings/settings-service.d.ts +6 -0
  216. package/dist/settings/types.d.ts +42 -0
  217. package/dist/types/chat-schema.d.ts +24 -7
  218. package/dist/types/common.d.ts +0 -1
  219. package/dist/types/config.d.ts +2 -3
  220. package/dist/types/events.d.ts +8 -1
  221. package/dist/types/provider-settings.d.ts +2 -3
  222. package/dist/types/session.d.ts +22 -6
  223. package/dist/types/sessions.d.ts +0 -1
  224. package/dist/types/storage.d.ts +0 -1
  225. package/dist/types.d.ts +17 -14
  226. package/dist/version.d.ts +0 -1
  227. package/package.json +16 -12
  228. package/dist/ClineCore.d.ts.map +0 -1
  229. package/dist/account/cline-account-service.d.ts.map +0 -1
  230. package/dist/account/index.d.ts.map +0 -1
  231. package/dist/account/rpc.d.ts.map +0 -1
  232. package/dist/account/types.d.ts.map +0 -1
  233. package/dist/auth/bounded-ttl-cache.d.ts.map +0 -1
  234. package/dist/auth/client.d.ts.map +0 -1
  235. package/dist/auth/cline.d.ts.map +0 -1
  236. package/dist/auth/codex.d.ts.map +0 -1
  237. package/dist/auth/oca.d.ts.map +0 -1
  238. package/dist/auth/server.d.ts.map +0 -1
  239. package/dist/auth/types.d.ts.map +0 -1
  240. package/dist/auth/utils.d.ts.map +0 -1
  241. package/dist/cron/cron-event-ingress.d.ts.map +0 -1
  242. package/dist/cron/cron-materializer.d.ts.map +0 -1
  243. package/dist/cron/cron-reconciler.d.ts.map +0 -1
  244. package/dist/cron/cron-report-writer.d.ts.map +0 -1
  245. package/dist/cron/cron-runner.d.ts.map +0 -1
  246. package/dist/cron/cron-schema.d.ts.map +0 -1
  247. package/dist/cron/cron-service.d.ts.map +0 -1
  248. package/dist/cron/cron-spec-parser.d.ts.map +0 -1
  249. package/dist/cron/cron-watcher.d.ts.map +0 -1
  250. package/dist/cron/resource-limiter.d.ts.map +0 -1
  251. package/dist/cron/schedule-command-service.d.ts.map +0 -1
  252. package/dist/cron/schedule-service.d.ts.map +0 -1
  253. package/dist/cron/scheduler.d.ts +0 -68
  254. package/dist/cron/scheduler.d.ts.map +0 -1
  255. package/dist/cron/sqlite-cron-store.d.ts.map +0 -1
  256. package/dist/cron/sqlite-schedule-store.d.ts +0 -52
  257. package/dist/cron/sqlite-schedule-store.d.ts.map +0 -1
  258. package/dist/extensions/config/agent-config-loader.d.ts +0 -20
  259. package/dist/extensions/config/agent-config-loader.d.ts.map +0 -1
  260. package/dist/extensions/config/agent-config-parser.d.ts +0 -29
  261. package/dist/extensions/config/agent-config-parser.d.ts.map +0 -1
  262. package/dist/extensions/config/hooks-config-loader.d.ts.map +0 -1
  263. package/dist/extensions/config/index.d.ts.map +0 -1
  264. package/dist/extensions/config/runtime-commands.d.ts.map +0 -1
  265. package/dist/extensions/config/unified-config-file-watcher.d.ts.map +0 -1
  266. package/dist/extensions/config/user-instruction-config-loader.d.ts.map +0 -1
  267. package/dist/extensions/context/agentic-compaction.d.ts.map +0 -1
  268. package/dist/extensions/context/basic-compaction.d.ts.map +0 -1
  269. package/dist/extensions/context/compaction-shared.d.ts.map +0 -1
  270. package/dist/extensions/context/compaction.d.ts.map +0 -1
  271. package/dist/extensions/index.d.ts.map +0 -1
  272. package/dist/extensions/mcp/client.d.ts.map +0 -1
  273. package/dist/extensions/mcp/config-loader.d.ts.map +0 -1
  274. package/dist/extensions/mcp/index.d.ts.map +0 -1
  275. package/dist/extensions/mcp/manager.d.ts.map +0 -1
  276. package/dist/extensions/mcp/name-transform.d.ts.map +0 -1
  277. package/dist/extensions/mcp/policies.d.ts.map +0 -1
  278. package/dist/extensions/mcp/tools.d.ts.map +0 -1
  279. package/dist/extensions/mcp/types.d.ts.map +0 -1
  280. package/dist/extensions/plugin/plugin-config-loader.d.ts.map +0 -1
  281. package/dist/extensions/plugin/plugin-load-report.d.ts.map +0 -1
  282. package/dist/extensions/plugin/plugin-loader.d.ts.map +0 -1
  283. package/dist/extensions/plugin/plugin-module-import.d.ts.map +0 -1
  284. package/dist/extensions/plugin/plugin-sandbox.d.ts.map +0 -1
  285. package/dist/extensions/plugin/plugin-targeting.d.ts.map +0 -1
  286. package/dist/extensions/tools/constants.d.ts.map +0 -1
  287. package/dist/extensions/tools/definitions.d.ts.map +0 -1
  288. package/dist/extensions/tools/executors/apply-patch-parser.d.ts.map +0 -1
  289. package/dist/extensions/tools/executors/apply-patch.d.ts.map +0 -1
  290. package/dist/extensions/tools/executors/bash.d.ts.map +0 -1
  291. package/dist/extensions/tools/executors/editor.d.ts.map +0 -1
  292. package/dist/extensions/tools/executors/file-read.d.ts.map +0 -1
  293. package/dist/extensions/tools/executors/index.d.ts.map +0 -1
  294. package/dist/extensions/tools/executors/search.d.ts.map +0 -1
  295. package/dist/extensions/tools/executors/web-fetch.d.ts.map +0 -1
  296. package/dist/extensions/tools/helpers.d.ts.map +0 -1
  297. package/dist/extensions/tools/index.d.ts.map +0 -1
  298. package/dist/extensions/tools/model-tool-routing.d.ts.map +0 -1
  299. package/dist/extensions/tools/presets.d.ts.map +0 -1
  300. package/dist/extensions/tools/runtime.d.ts.map +0 -1
  301. package/dist/extensions/tools/schemas.d.ts.map +0 -1
  302. package/dist/extensions/tools/team/delegated-agent.d.ts.map +0 -1
  303. package/dist/extensions/tools/team/index.d.ts.map +0 -1
  304. package/dist/extensions/tools/team/multi-agent.d.ts.map +0 -1
  305. package/dist/extensions/tools/team/projections.d.ts.map +0 -1
  306. package/dist/extensions/tools/team/runtime.d.ts.map +0 -1
  307. package/dist/extensions/tools/team/spawn-agent-tool.d.ts.map +0 -1
  308. package/dist/extensions/tools/team/subagent-prompts.d.ts.map +0 -1
  309. package/dist/extensions/tools/team/team-tools.d.ts.map +0 -1
  310. package/dist/extensions/tools/types.d.ts.map +0 -1
  311. package/dist/hooks/checkpoint-hooks.d.ts.map +0 -1
  312. package/dist/hooks/hook-bridge.d.ts +0 -118
  313. package/dist/hooks/hook-bridge.d.ts.map +0 -1
  314. package/dist/hooks/hook-file-hooks.d.ts.map +0 -1
  315. package/dist/hooks/hook-registry.d.ts +0 -16
  316. package/dist/hooks/hook-registry.d.ts.map +0 -1
  317. package/dist/hooks/index.d.ts.map +0 -1
  318. package/dist/hooks/subprocess-runner.d.ts.map +0 -1
  319. package/dist/hooks/subprocess.d.ts.map +0 -1
  320. package/dist/hub/browser-websocket.d.ts.map +0 -1
  321. package/dist/hub/client.d.ts.map +0 -1
  322. package/dist/hub/connect.d.ts.map +0 -1
  323. package/dist/hub/daemon-entry.d.ts +0 -2
  324. package/dist/hub/daemon-entry.d.ts.map +0 -1
  325. package/dist/hub/daemon-entry.js +0 -1305
  326. package/dist/hub/daemon.d.ts.map +0 -1
  327. package/dist/hub/defaults.d.ts.map +0 -1
  328. package/dist/hub/discovery.d.ts.map +0 -1
  329. package/dist/hub/index.d.ts.map +0 -1
  330. package/dist/hub/native-transport.d.ts.map +0 -1
  331. package/dist/hub/runtime-handlers.d.ts.map +0 -1
  332. package/dist/hub/server.d.ts +0 -104
  333. package/dist/hub/server.d.ts.map +0 -1
  334. package/dist/hub/session-client.d.ts.map +0 -1
  335. package/dist/hub/start-shared-server.d.ts.map +0 -1
  336. package/dist/hub/transport.d.ts.map +0 -1
  337. package/dist/hub/ui-client.d.ts.map +0 -1
  338. package/dist/hub/workspace.d.ts.map +0 -1
  339. package/dist/index.d.ts.map +0 -1
  340. package/dist/llms/cline-recommended-models.d.ts.map +0 -1
  341. package/dist/llms/configured-provider-registry.d.ts.map +0 -1
  342. package/dist/llms/handler-factory.d.ts +0 -16
  343. package/dist/llms/handler-factory.d.ts.map +0 -1
  344. package/dist/llms/provider-defaults.d.ts.map +0 -1
  345. package/dist/llms/provider-settings.d.ts.map +0 -1
  346. package/dist/llms/runtime-config.d.ts.map +0 -1
  347. package/dist/llms/runtime-registry.d.ts.map +0 -1
  348. package/dist/llms/runtime-types.d.ts.map +0 -1
  349. package/dist/runtime/agent-config-adapter.d.ts +0 -148
  350. package/dist/runtime/agent-config-adapter.d.ts.map +0 -1
  351. package/dist/runtime/agent-runtime-config-builder.d.ts.map +0 -1
  352. package/dist/runtime/history.d.ts +0 -10
  353. package/dist/runtime/history.d.ts.map +0 -1
  354. package/dist/runtime/host.d.ts.map +0 -1
  355. package/dist/runtime/loop-detection.d.ts.map +0 -1
  356. package/dist/runtime/mistake-tracker.d.ts.map +0 -1
  357. package/dist/runtime/rules.d.ts.map +0 -1
  358. package/dist/runtime/runtime-builder.d.ts.map +0 -1
  359. package/dist/runtime/runtime-event-adapter.d.ts.map +0 -1
  360. package/dist/runtime/runtime-host.d.ts.map +0 -1
  361. package/dist/runtime/runtime-oauth-token-manager.d.ts.map +0 -1
  362. package/dist/runtime/session-runtime-orchestrator.d.ts.map +0 -1
  363. package/dist/runtime/session-runtime.d.ts.map +0 -1
  364. package/dist/runtime/subprocess-sandbox.d.ts.map +0 -1
  365. package/dist/runtime/tool-approval.d.ts.map +0 -1
  366. package/dist/runtime/user-input-builder.d.ts.map +0 -1
  367. package/dist/services/agent-events.d.ts.map +0 -1
  368. package/dist/services/config.d.ts.map +0 -1
  369. package/dist/services/global-settings.d.ts.map +0 -1
  370. package/dist/services/index.js +0 -28
  371. package/dist/services/local-runtime-bootstrap.d.ts.map +0 -1
  372. package/dist/services/plugin-tools.d.ts.map +0 -1
  373. package/dist/services/providers/local-provider-registry.d.ts.map +0 -1
  374. package/dist/services/providers/local-provider-service.d.ts.map +0 -1
  375. package/dist/services/session-artifacts.d.ts.map +0 -1
  376. package/dist/services/session-data.d.ts.map +0 -1
  377. package/dist/services/session-telemetry.d.ts.map +0 -1
  378. package/dist/services/storage/file-team-store.d.ts.map +0 -1
  379. package/dist/services/storage/provider-settings-legacy-migration.d.ts.map +0 -1
  380. package/dist/services/storage/provider-settings-manager.d.ts.map +0 -1
  381. package/dist/services/storage/sqlite-session-store.d.ts.map +0 -1
  382. package/dist/services/storage/sqlite-team-store.d.ts.map +0 -1
  383. package/dist/services/storage/team-store.d.ts.map +0 -1
  384. package/dist/services/telemetry/ITelemetryAdapter.d.ts.map +0 -1
  385. package/dist/services/telemetry/OpenTelemetryAdapter.d.ts.map +0 -1
  386. package/dist/services/telemetry/OpenTelemetryProvider.d.ts.map +0 -1
  387. package/dist/services/telemetry/TelemetryLoggerSink.d.ts.map +0 -1
  388. package/dist/services/telemetry/TelemetryService.d.ts.map +0 -1
  389. package/dist/services/telemetry/core-events.d.ts.map +0 -1
  390. package/dist/services/telemetry/distinct-id.d.ts.map +0 -1
  391. package/dist/services/telemetry/index.d.ts.map +0 -1
  392. package/dist/services/usage.d.ts.map +0 -1
  393. package/dist/services/workspace/file-indexer.d.ts.map +0 -1
  394. package/dist/services/workspace/index.d.ts.map +0 -1
  395. package/dist/services/workspace/mention-enricher.d.ts.map +0 -1
  396. package/dist/services/workspace-manifest.d.ts.map +0 -1
  397. package/dist/session/conversation-store.d.ts.map +0 -1
  398. package/dist/session/file-session-service.d.ts.map +0 -1
  399. package/dist/session/message-builder.d.ts.map +0 -1
  400. package/dist/session/persistence-service.d.ts.map +0 -1
  401. package/dist/session/session-graph.d.ts.map +0 -1
  402. package/dist/session/session-manifest-store.d.ts.map +0 -1
  403. package/dist/session/session-manifest.d.ts.map +0 -1
  404. package/dist/session/session-row.d.ts.map +0 -1
  405. package/dist/session/session-service.d.ts.map +0 -1
  406. package/dist/session/session-team-coordination.d.ts.map +0 -1
  407. package/dist/session/subagent-session-manager.d.ts.map +0 -1
  408. package/dist/session/team-persistence-store.d.ts.map +0 -1
  409. package/dist/session/workspace-manager.d.ts.map +0 -1
  410. package/dist/transports/hub.d.ts +0 -58
  411. package/dist/transports/hub.d.ts.map +0 -1
  412. package/dist/transports/local.d.ts +0 -119
  413. package/dist/transports/local.d.ts.map +0 -1
  414. package/dist/transports/remote.d.ts.map +0 -1
  415. package/dist/transports/runtime-host-support.d.ts.map +0 -1
  416. package/dist/types/chat-schema.d.ts.map +0 -1
  417. package/dist/types/common.d.ts.map +0 -1
  418. package/dist/types/config.d.ts.map +0 -1
  419. package/dist/types/events.d.ts.map +0 -1
  420. package/dist/types/provider-settings.d.ts.map +0 -1
  421. package/dist/types/session.d.ts.map +0 -1
  422. package/dist/types/sessions.d.ts.map +0 -1
  423. package/dist/types/storage.d.ts.map +0 -1
  424. package/dist/types.d.ts.map +0 -1
  425. package/dist/version.d.ts.map +0 -1
  426. package/src/ClineCore.ts +0 -1026
  427. package/src/account/cline-account-service.ts +0 -338
  428. package/src/account/index.ts +0 -24
  429. package/src/account/rpc.ts +0 -185
  430. package/src/account/types.ts +0 -108
  431. package/src/auth/bounded-ttl-cache.ts +0 -53
  432. package/src/auth/client.ts +0 -46
  433. package/src/auth/cline.ts +0 -724
  434. package/src/auth/codex.ts +0 -491
  435. package/src/auth/oca.ts +0 -588
  436. package/src/auth/server.ts +0 -265
  437. package/src/auth/types.ts +0 -110
  438. package/src/auth/utils.ts +0 -247
  439. package/src/cron/cron-event-ingress.ts +0 -357
  440. package/src/cron/cron-materializer.ts +0 -97
  441. package/src/cron/cron-reconciler.ts +0 -241
  442. package/src/cron/cron-report-writer.ts +0 -153
  443. package/src/cron/cron-runner.ts +0 -495
  444. package/src/cron/cron-schema.ts +0 -127
  445. package/src/cron/cron-service.ts +0 -163
  446. package/src/cron/cron-spec-parser.ts +0 -489
  447. package/src/cron/cron-watcher.ts +0 -102
  448. package/src/cron/index.ts +0 -15
  449. package/src/cron/resource-limiter.ts +0 -46
  450. package/src/cron/schedule-command-service.ts +0 -193
  451. package/src/cron/schedule-service.ts +0 -703
  452. package/src/cron/scheduler.ts +0 -772
  453. package/src/cron/sqlite-cron-store.ts +0 -1286
  454. package/src/cron/sqlite-schedule-store.ts +0 -708
  455. package/src/extensions/config/agent-config-loader.ts +0 -114
  456. package/src/extensions/config/agent-config-parser.ts +0 -198
  457. package/src/extensions/config/hooks-config-loader.ts +0 -117
  458. package/src/extensions/config/index.ts +0 -77
  459. package/src/extensions/config/runtime-commands.ts +0 -82
  460. package/src/extensions/config/unified-config-file-watcher.ts +0 -496
  461. package/src/extensions/config/user-instruction-config-loader.ts +0 -549
  462. package/src/extensions/context/agentic-compaction.ts +0 -131
  463. package/src/extensions/context/basic-compaction.ts +0 -300
  464. package/src/extensions/context/compaction-shared.ts +0 -459
  465. package/src/extensions/context/compaction.ts +0 -226
  466. package/src/extensions/index.ts +0 -18
  467. package/src/extensions/mcp/client.ts +0 -420
  468. package/src/extensions/mcp/config-loader.ts +0 -219
  469. package/src/extensions/mcp/index.ts +0 -42
  470. package/src/extensions/mcp/manager.ts +0 -260
  471. package/src/extensions/mcp/name-transform.ts +0 -33
  472. package/src/extensions/mcp/policies.ts +0 -47
  473. package/src/extensions/mcp/tools.ts +0 -47
  474. package/src/extensions/mcp/types.ts +0 -116
  475. package/src/extensions/plugin/plugin-config-loader.ts +0 -140
  476. package/src/extensions/plugin/plugin-load-report.ts +0 -20
  477. package/src/extensions/plugin/plugin-loader.ts +0 -220
  478. package/src/extensions/plugin/plugin-module-import.ts +0 -276
  479. package/src/extensions/plugin/plugin-sandbox-bootstrap.ts +0 -662
  480. package/src/extensions/plugin/plugin-sandbox.ts +0 -586
  481. package/src/extensions/plugin/plugin-targeting.ts +0 -32
  482. package/src/extensions/tools/constants.ts +0 -37
  483. package/src/extensions/tools/definitions.ts +0 -738
  484. package/src/extensions/tools/executors/apply-patch-parser.ts +0 -520
  485. package/src/extensions/tools/executors/apply-patch.ts +0 -348
  486. package/src/extensions/tools/executors/bash.ts +0 -207
  487. package/src/extensions/tools/executors/editor.ts +0 -220
  488. package/src/extensions/tools/executors/file-read.ts +0 -135
  489. package/src/extensions/tools/executors/index.ts +0 -87
  490. package/src/extensions/tools/executors/search.ts +0 -470
  491. package/src/extensions/tools/executors/web-fetch.ts +0 -259
  492. package/src/extensions/tools/helpers.ts +0 -154
  493. package/src/extensions/tools/index.ts +0 -183
  494. package/src/extensions/tools/model-tool-routing.ts +0 -134
  495. package/src/extensions/tools/presets.ts +0 -190
  496. package/src/extensions/tools/runtime.ts +0 -261
  497. package/src/extensions/tools/schemas.ts +0 -343
  498. package/src/extensions/tools/team/delegated-agent.ts +0 -136
  499. package/src/extensions/tools/team/index.ts +0 -5
  500. package/src/extensions/tools/team/multi-agent.ts +0 -1845
  501. package/src/extensions/tools/team/projections.ts +0 -283
  502. package/src/extensions/tools/team/runtime.ts +0 -54
  503. package/src/extensions/tools/team/spawn-agent-tool.ts +0 -201
  504. package/src/extensions/tools/team/subagent-prompts.ts +0 -41
  505. package/src/extensions/tools/team/team-tools.ts +0 -902
  506. package/src/extensions/tools/types.ts +0 -354
  507. package/src/hooks/checkpoint-hooks.ts +0 -238
  508. package/src/hooks/hook-bridge.ts +0 -489
  509. package/src/hooks/hook-file-hooks.ts +0 -934
  510. package/src/hooks/hook-registry.ts +0 -257
  511. package/src/hooks/index.ts +0 -18
  512. package/src/hooks/subprocess-runner.ts +0 -196
  513. package/src/hooks/subprocess.ts +0 -469
  514. package/src/hub/browser-websocket.ts +0 -159
  515. package/src/hub/client.ts +0 -633
  516. package/src/hub/connect.ts +0 -156
  517. package/src/hub/daemon-entry.ts +0 -122
  518. package/src/hub/daemon.ts +0 -284
  519. package/src/hub/defaults.ts +0 -70
  520. package/src/hub/discovery.ts +0 -247
  521. package/src/hub/index.ts +0 -14
  522. package/src/hub/native-transport.ts +0 -31
  523. package/src/hub/runtime-handlers.ts +0 -141
  524. package/src/hub/server.ts +0 -2317
  525. package/src/hub/session-client.ts +0 -502
  526. package/src/hub/start-shared-server.ts +0 -61
  527. package/src/hub/transport.ts +0 -14
  528. package/src/hub/ui-client.ts +0 -126
  529. package/src/hub/workspace.ts +0 -19
  530. package/src/index.ts +0 -688
  531. package/src/llms/cline-recommended-models.ts +0 -167
  532. package/src/llms/configured-provider-registry.ts +0 -193
  533. package/src/llms/handler-factory.ts +0 -56
  534. package/src/llms/provider-defaults.ts +0 -653
  535. package/src/llms/provider-settings.ts +0 -310
  536. package/src/llms/runtime-config.ts +0 -43
  537. package/src/llms/runtime-registry.ts +0 -172
  538. package/src/llms/runtime-types.ts +0 -121
  539. package/src/runtime/agent-config-adapter.ts +0 -636
  540. package/src/runtime/agent-runtime-config-builder.ts +0 -205
  541. package/src/runtime/error-feedback.ts +0 -142
  542. package/src/runtime/history.ts +0 -374
  543. package/src/runtime/host.ts +0 -222
  544. package/src/runtime/index.ts +0 -23
  545. package/src/runtime/loop-detection.ts +0 -162
  546. package/src/runtime/mistake-tracker.ts +0 -221
  547. package/src/runtime/rules.ts +0 -49
  548. package/src/runtime/runtime-builder.ts +0 -814
  549. package/src/runtime/runtime-event-adapter.ts +0 -412
  550. package/src/runtime/runtime-host.ts +0 -250
  551. package/src/runtime/runtime-oauth-token-manager.ts +0 -268
  552. package/src/runtime/session-runtime-orchestrator.ts +0 -1253
  553. package/src/runtime/session-runtime.ts +0 -69
  554. package/src/runtime/subprocess-sandbox.ts +0 -255
  555. package/src/runtime/tool-approval.ts +0 -102
  556. package/src/runtime/user-input-builder.ts +0 -167
  557. package/src/services/agent-events.ts +0 -256
  558. package/src/services/config.ts +0 -5
  559. package/src/services/global-settings.ts +0 -122
  560. package/src/services/local-runtime-bootstrap.ts +0 -424
  561. package/src/services/plugin-tools.ts +0 -86
  562. package/src/services/providers/local-provider-registry.ts +0 -456
  563. package/src/services/providers/local-provider-service.ts +0 -772
  564. package/src/services/session-artifacts.ts +0 -138
  565. package/src/services/session-data.ts +0 -398
  566. package/src/services/session-telemetry.ts +0 -89
  567. package/src/services/storage/artifact-store.ts +0 -1
  568. package/src/services/storage/file-team-store.ts +0 -250
  569. package/src/services/storage/index.ts +0 -11
  570. package/src/services/storage/provider-settings-legacy-migration.ts +0 -789
  571. package/src/services/storage/provider-settings-manager.ts +0 -167
  572. package/src/services/storage/session-store.ts +0 -1
  573. package/src/services/storage/sqlite-session-store.ts +0 -270
  574. package/src/services/storage/sqlite-team-store.ts +0 -537
  575. package/src/services/storage/team-store.ts +0 -36
  576. package/src/services/telemetry/ITelemetryAdapter.ts +0 -94
  577. package/src/services/telemetry/OpenTelemetryAdapter.ts +0 -348
  578. package/src/services/telemetry/OpenTelemetryProvider.ts +0 -415
  579. package/src/services/telemetry/TelemetryLoggerSink.ts +0 -121
  580. package/src/services/telemetry/TelemetryService.ts +0 -139
  581. package/src/services/telemetry/core-events.ts +0 -400
  582. package/src/services/telemetry/distinct-id.ts +0 -58
  583. package/src/services/telemetry/index.ts +0 -20
  584. package/src/services/usage.ts +0 -32
  585. package/src/services/workspace/file-indexer.ts +0 -351
  586. package/src/services/workspace/index.ts +0 -7
  587. package/src/services/workspace/mention-enricher.ts +0 -122
  588. package/src/services/workspace-manifest.ts +0 -72
  589. package/src/session/conversation-store.ts +0 -77
  590. package/src/session/file-session-service.ts +0 -282
  591. package/src/session/index.ts +0 -32
  592. package/src/session/message-builder.ts +0 -941
  593. package/src/session/persistence-service.ts +0 -559
  594. package/src/session/session-graph.ts +0 -92
  595. package/src/session/session-manifest-store.ts +0 -158
  596. package/src/session/session-manifest.ts +0 -29
  597. package/src/session/session-row.ts +0 -199
  598. package/src/session/session-service.ts +0 -324
  599. package/src/session/session-team-coordination.ts +0 -240
  600. package/src/session/subagent-session-manager.ts +0 -397
  601. package/src/session/team-persistence-store.ts +0 -176
  602. package/src/session/workspace-manager.ts +0 -100
  603. package/src/transports/hub.ts +0 -1081
  604. package/src/transports/local.ts +0 -1826
  605. package/src/transports/remote.ts +0 -27
  606. package/src/transports/runtime-host-support.ts +0 -140
  607. package/src/types/chat-schema.ts +0 -81
  608. package/src/types/common.ts +0 -26
  609. package/src/types/config.ts +0 -220
  610. package/src/types/events.ts +0 -80
  611. package/src/types/index.ts +0 -26
  612. package/src/types/provider-settings.ts +0 -54
  613. package/src/types/session.ts +0 -111
  614. package/src/types/sessions.ts +0 -37
  615. package/src/types/storage.ts +0 -56
  616. package/src/types.ts +0 -167
  617. package/src/version.ts +0 -3
@@ -1,158 +0,0 @@
1
- import {
2
- appendFileSync,
3
- existsSync,
4
- mkdirSync,
5
- readFileSync,
6
- writeFileSync,
7
- } from "node:fs";
8
- import { dirname, join } from "node:path";
9
- import type * as LlmsProviders from "@clinebot/llms";
10
- import { ensureHookLogDir } from "@clinebot/shared/storage";
11
- import { nowIso, SessionArtifacts } from "../services/session-artifacts";
12
- import {
13
- buildMessagesFilePayload,
14
- resolveMessagesFileContext,
15
- writeEmptyMessagesFile,
16
- } from "../services/session-data";
17
- import type {
18
- SessionMessagesArtifactUploader,
19
- SessionPersistenceAdapter,
20
- StoredMessageWithMetadata,
21
- } from "../types/session";
22
- import {
23
- type SessionManifest,
24
- SessionManifestSchema,
25
- } from "./session-manifest";
26
-
27
- export class SessionManifestStore {
28
- readonly artifacts: SessionArtifacts;
29
-
30
- constructor(
31
- private readonly adapter: SessionPersistenceAdapter,
32
- private readonly messagesArtifactUploader?: SessionMessagesArtifactUploader,
33
- ) {
34
- this.artifacts = new SessionArtifacts(() => this.ensureSessionsDir());
35
- }
36
-
37
- ensureSessionsDir(): string {
38
- return this.adapter.ensureSessionsDir();
39
- }
40
-
41
- initializeMessagesFile(
42
- sessionId: string,
43
- path: string,
44
- startedAt: string,
45
- ): void {
46
- writeEmptyMessagesFile(
47
- path,
48
- startedAt,
49
- resolveMessagesFileContext(sessionId),
50
- );
51
- }
52
-
53
- writeSessionManifest(manifestPath: string, manifest: SessionManifest): void {
54
- mkdirSync(dirname(manifestPath), { recursive: true });
55
- writeFileSync(
56
- manifestPath,
57
- `${JSON.stringify(SessionManifestSchema.parse(manifest), null, 2)}\n`,
58
- "utf8",
59
- );
60
- }
61
-
62
- readSessionManifest(sessionId: string): SessionManifest | undefined {
63
- return this.readManifestFile(sessionId).manifest;
64
- }
65
-
66
- readManifestFile(sessionId: string): {
67
- path: string;
68
- manifest?: SessionManifest;
69
- } {
70
- const manifestPath = this.artifacts.sessionManifestPath(sessionId, false);
71
- if (!existsSync(manifestPath)) {
72
- return { path: manifestPath };
73
- }
74
- try {
75
- return {
76
- path: manifestPath,
77
- manifest: SessionManifestSchema.parse(
78
- JSON.parse(readFileSync(manifestPath, "utf8")) as SessionManifest,
79
- ),
80
- };
81
- } catch {
82
- return { path: manifestPath };
83
- }
84
- }
85
-
86
- async resolveArtifactPath(
87
- sessionId: string,
88
- kind: "messagesPath",
89
- fallback: (id: string) => string,
90
- ): Promise<string> {
91
- const row = await this.adapter.getSession(sessionId);
92
- const value = row?.[kind];
93
- return typeof value === "string" && value.trim().length > 0
94
- ? value
95
- : fallback(sessionId);
96
- }
97
-
98
- async persistSessionMessages(
99
- sessionId: string,
100
- messages: LlmsProviders.Message[],
101
- systemPrompt?: string,
102
- ): Promise<void> {
103
- const path = await this.resolveArtifactPath(
104
- sessionId,
105
- "messagesPath",
106
- (id) => this.artifacts.sessionMessagesPath(id),
107
- );
108
- const payload = buildMessagesFilePayload({
109
- updatedAt: nowIso(),
110
- context: resolveMessagesFileContext(sessionId),
111
- messages: messages as StoredMessageWithMetadata[],
112
- systemPrompt,
113
- });
114
- const contents = `${JSON.stringify(payload, null, 2)}\n`;
115
- mkdirSync(dirname(path), { recursive: true });
116
- writeFileSync(path, contents, "utf8");
117
- if (!this.messagesArtifactUploader) {
118
- return;
119
- }
120
- try {
121
- const row = await this.adapter.getSession(sessionId);
122
- await this.messagesArtifactUploader.uploadMessagesFile({
123
- sessionId,
124
- path,
125
- contents,
126
- row,
127
- });
128
- } catch (error) {
129
- console.warn(
130
- `Failed to upload persisted session messages for ${sessionId}`,
131
- error,
132
- );
133
- }
134
- }
135
-
136
- appendStaleSessionHookLog(
137
- detectedAt: string,
138
- sessionId: string,
139
- pid: number,
140
- reason: string,
141
- source: string,
142
- ): void {
143
- const envPath = process.env.CLINE_HOOKS_LOG_PATH?.trim() || undefined;
144
- const logPath = envPath ?? join(ensureHookLogDir(), "hooks.jsonl");
145
- appendFileSync(
146
- logPath,
147
- `${JSON.stringify({
148
- ts: detectedAt,
149
- hookName: "session_shutdown",
150
- reason,
151
- sessionId,
152
- pid,
153
- source,
154
- })}\n`,
155
- "utf8",
156
- );
157
- }
158
- }
@@ -1,29 +0,0 @@
1
- import { z } from "zod";
2
- import { SESSION_STATUSES } from "../types/common";
3
-
4
- const SessionStatusSchema = z.enum(SESSION_STATUSES);
5
-
6
- export const SessionManifestSchema = z.object({
7
- version: z.literal(1),
8
- session_id: z.string().min(1),
9
- source: z.string().min(1),
10
- pid: z.number().int(),
11
- started_at: z.string().min(1),
12
- ended_at: z.string().min(1).optional(),
13
- exit_code: z.number().int().nullable().optional(),
14
- status: SessionStatusSchema,
15
- interactive: z.boolean(),
16
- provider: z.string().min(1),
17
- model: z.string().min(1),
18
- cwd: z.string().min(1),
19
- workspace_root: z.string().min(1),
20
- team_name: z.string().min(1).optional(),
21
- enable_tools: z.boolean(),
22
- enable_spawn: z.boolean(),
23
- enable_teams: z.boolean(),
24
- prompt: z.string().optional(),
25
- metadata: z.record(z.string(), z.unknown()).optional(),
26
- messages_path: z.string().min(1).optional(),
27
- });
28
-
29
- export type SessionManifest = z.infer<typeof SessionManifestSchema>;
@@ -1,199 +0,0 @@
1
- import type { TeamTeammateSpec } from "@clinebot/shared";
2
- import type { AgentTeamsRuntime } from "../extensions/tools/team";
3
- import type { SessionSource, SessionStatus } from "../types/common";
4
- import type { SessionManifest } from "./session-manifest";
5
-
6
- export interface SessionRow {
7
- sessionId: string;
8
- source: string;
9
- pid: number;
10
- startedAt: string;
11
- endedAt?: string | null;
12
- exitCode?: number | null;
13
- status: SessionStatus;
14
- statusLock: number;
15
- interactive: boolean;
16
- provider: string;
17
- model: string;
18
- cwd: string;
19
- workspaceRoot: string;
20
- teamName?: string | null;
21
- enableTools: boolean;
22
- enableSpawn: boolean;
23
- enableTeams: boolean;
24
- parentSessionId?: string | null;
25
- parentAgentId?: string | null;
26
- agentId?: string | null;
27
- conversationId?: string | null;
28
- isSubagent: boolean;
29
- prompt?: string | null;
30
- metadata?: Record<string, unknown> | null;
31
- hookPath?: string;
32
- messagesPath?: string | null;
33
- updatedAt: string;
34
- }
35
-
36
- export interface CreateRootSessionInput {
37
- sessionId: string;
38
- source: SessionSource;
39
- pid: number;
40
- startedAt: string;
41
- interactive: boolean;
42
- provider: string;
43
- model: string;
44
- cwd: string;
45
- workspaceRoot: string;
46
- teamName?: string;
47
- enableTools: boolean;
48
- enableSpawn: boolean;
49
- enableTeams: boolean;
50
- prompt?: string;
51
- metadata?: Record<string, unknown>;
52
- messagesPath: string;
53
- }
54
-
55
- export interface CreateRootSessionWithArtifactsInput {
56
- sessionId: string;
57
- source: SessionSource;
58
- pid: number;
59
- interactive: boolean;
60
- provider: string;
61
- model: string;
62
- cwd: string;
63
- workspaceRoot: string;
64
- teamName?: string;
65
- enableTools: boolean;
66
- enableSpawn: boolean;
67
- enableTeams: boolean;
68
- prompt?: string;
69
- metadata?: Record<string, unknown>;
70
- startedAt?: string;
71
- }
72
-
73
- export interface RootSessionArtifacts {
74
- manifestPath: string;
75
- messagesPath: string;
76
- manifest: SessionManifest;
77
- }
78
-
79
- export interface UpsertSubagentInput {
80
- agentId: string;
81
- parentAgentId: string;
82
- conversationId: string;
83
- prompt?: string;
84
- rootSessionId?: string;
85
- }
86
-
87
- /** SELECT clause that aliases snake_case columns to camelCase SessionRow keys. */
88
- export const SESSION_SELECT_COLUMNS = `
89
- session_id AS sessionId,
90
- source,
91
- pid,
92
- started_at AS startedAt,
93
- ended_at AS endedAt,
94
- exit_code AS exitCode,
95
- status,
96
- status_lock AS statusLock,
97
- interactive,
98
- provider,
99
- model,
100
- cwd,
101
- workspace_root AS workspaceRoot,
102
- team_name AS teamName,
103
- enable_tools AS enableTools,
104
- enable_spawn AS enableSpawn,
105
- enable_teams AS enableTeams,
106
- parent_session_id AS parentSessionId,
107
- parent_agent_id AS parentAgentId,
108
- agent_id AS agentId,
109
- conversation_id AS conversationId,
110
- is_subagent AS isSubagent,
111
- prompt,
112
- metadata_json AS metadata,
113
- hook_path AS hookPath,
114
- messages_path AS messagesPath,
115
- updated_at AS updatedAt`;
116
-
117
- export function patchSqliteRow(raw: Record<string, unknown>): SessionRow {
118
- raw.interactive = raw.interactive === 1;
119
- raw.enableTools = raw.enableTools === 1;
120
- raw.enableSpawn = raw.enableSpawn === 1;
121
- raw.enableTeams = raw.enableTeams === 1;
122
- raw.isSubagent = raw.isSubagent === 1;
123
- const meta = raw.metadata;
124
- if (typeof meta === "string" && meta.trim()) {
125
- try {
126
- const parsed = JSON.parse(meta) as unknown;
127
- raw.metadata =
128
- parsed && typeof parsed === "object" && !Array.isArray(parsed)
129
- ? parsed
130
- : null;
131
- } catch {
132
- raw.metadata = null;
133
- }
134
- } else {
135
- raw.metadata = null;
136
- }
137
- return raw as unknown as SessionRow;
138
- }
139
-
140
- export function stringifyMetadata(
141
- metadata: Record<string, unknown> | null | undefined,
142
- ): string | null {
143
- if (!metadata || Object.keys(metadata).length === 0) return null;
144
- return JSON.stringify(metadata);
145
- }
146
-
147
- export type TeamRuntimeState = ReturnType<AgentTeamsRuntime["exportState"]>;
148
-
149
- export interface PersistedTeamEnvelope {
150
- version: 1;
151
- updatedAt: string;
152
- teamState: TeamRuntimeState;
153
- teammates: TeamTeammateSpec[];
154
- }
155
-
156
- export function reviveTeamStateDates(
157
- state: TeamRuntimeState,
158
- ): TeamRuntimeState {
159
- return {
160
- ...state,
161
- tasks: state.tasks.map((task) => ({
162
- ...task,
163
- createdAt: new Date(task.createdAt),
164
- updatedAt: new Date(task.updatedAt),
165
- })),
166
- mailbox: state.mailbox.map((message) => ({
167
- ...message,
168
- sentAt: new Date(message.sentAt),
169
- readAt: message.readAt ? new Date(message.readAt) : undefined,
170
- })),
171
- missionLog: state.missionLog.map((entry) => ({
172
- ...entry,
173
- ts: new Date(entry.ts),
174
- })),
175
- runs: (state.runs ?? []).map((run) => ({
176
- ...run,
177
- startedAt: new Date(run.startedAt),
178
- endedAt: run.endedAt ? new Date(run.endedAt) : undefined,
179
- nextAttemptAt: run.nextAttemptAt
180
- ? new Date(run.nextAttemptAt)
181
- : undefined,
182
- heartbeatAt: run.heartbeatAt ? new Date(run.heartbeatAt) : undefined,
183
- })),
184
- outcomes: (state.outcomes ?? []).map((outcome) => ({
185
- ...outcome,
186
- createdAt: new Date(outcome.createdAt),
187
- finalizedAt: outcome.finalizedAt
188
- ? new Date(outcome.finalizedAt)
189
- : undefined,
190
- })),
191
- outcomeFragments: (state.outcomeFragments ?? []).map((fragment) => ({
192
- ...fragment,
193
- createdAt: new Date(fragment.createdAt),
194
- reviewedAt: fragment.reviewedAt
195
- ? new Date(fragment.reviewedAt)
196
- : undefined,
197
- })),
198
- };
199
- }
@@ -1,324 +0,0 @@
1
- import { existsSync, mkdirSync } from "node:fs";
2
- import { resolveSessionDataDir } from "@clinebot/shared/storage";
3
- import { nowIso } from "../services/session-artifacts";
4
- import type { SqliteSessionStore } from "../services/storage/sqlite-session-store";
5
- import type { SessionMessagesArtifactUploader } from "../types/session";
6
- import type {
7
- PersistedSessionUpdateInput,
8
- SessionPersistenceAdapter,
9
- } from "./persistence-service";
10
- import { UnifiedSessionPersistenceService } from "./persistence-service";
11
- import {
12
- type CreateRootSessionInput,
13
- patchSqliteRow,
14
- SESSION_SELECT_COLUMNS,
15
- type SessionRow,
16
- stringifyMetadata,
17
- } from "./session-row";
18
-
19
- class LocalSessionPersistenceAdapter implements SessionPersistenceAdapter {
20
- constructor(
21
- private readonly store: SqliteSessionStore,
22
- private readonly sessionsDirPath: string = resolveSessionDataDir(),
23
- ) {}
24
-
25
- ensureSessionsDir(): string {
26
- if (!existsSync(this.sessionsDirPath)) {
27
- mkdirSync(this.sessionsDirPath, { recursive: true });
28
- }
29
- return this.sessionsDirPath;
30
- }
31
-
32
- async upsertSession(row: SessionRow): Promise<void> {
33
- this.store.run(
34
- `INSERT OR REPLACE INTO sessions (
35
- session_id, source, pid, started_at, ended_at, exit_code, status, status_lock, interactive,
36
- provider, model, cwd, workspace_root, team_name, enable_tools, enable_spawn, enable_teams,
37
- parent_session_id, parent_agent_id, agent_id, conversation_id, is_subagent, prompt,
38
- metadata_json, transcript_path, hook_path, messages_path, updated_at
39
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`,
40
- [
41
- row.sessionId,
42
- row.source,
43
- row.pid,
44
- row.startedAt,
45
- row.endedAt ?? null,
46
- row.exitCode ?? null,
47
- row.status,
48
- row.statusLock,
49
- row.interactive ? 1 : 0,
50
- row.provider,
51
- row.model,
52
- row.cwd,
53
- row.workspaceRoot,
54
- row.teamName ?? null,
55
- row.enableTools ? 1 : 0,
56
- row.enableSpawn ? 1 : 0,
57
- row.enableTeams ? 1 : 0,
58
- row.parentSessionId ?? null,
59
- row.parentAgentId ?? null,
60
- row.agentId ?? null,
61
- row.conversationId ?? null,
62
- row.isSubagent ? 1 : 0,
63
- row.prompt ?? null,
64
- stringifyMetadata(row.metadata),
65
- "",
66
- row.hookPath ?? "",
67
- row.messagesPath ?? null,
68
- row.updatedAt,
69
- ],
70
- );
71
- }
72
-
73
- async getSession(sessionId: string): Promise<SessionRow | undefined> {
74
- const row = this.store.queryOne<Record<string, unknown>>(
75
- `SELECT ${SESSION_SELECT_COLUMNS} FROM sessions WHERE session_id = ?`,
76
- [sessionId],
77
- );
78
- return row ? patchSqliteRow(row) : undefined;
79
- }
80
-
81
- async listSessions(options: {
82
- limit: number;
83
- parentSessionId?: string;
84
- status?: string;
85
- }): Promise<SessionRow[]> {
86
- const whereClauses: string[] = [];
87
- const params: unknown[] = [];
88
- if (options.parentSessionId) {
89
- whereClauses.push("parent_session_id = ?");
90
- params.push(options.parentSessionId);
91
- }
92
- if (options.status) {
93
- whereClauses.push("status = ?");
94
- params.push(options.status);
95
- }
96
- const where =
97
- whereClauses.length > 0 ? `WHERE ${whereClauses.join(" AND ")}` : "";
98
- return this.store
99
- .queryAll<Record<string, unknown>>(
100
- `SELECT ${SESSION_SELECT_COLUMNS}
101
- FROM sessions
102
- ${where}
103
- ORDER BY started_at DESC
104
- LIMIT ?`,
105
- [...params, options.limit],
106
- )
107
- .map(patchSqliteRow);
108
- }
109
-
110
- async updateSession(
111
- input: PersistedSessionUpdateInput,
112
- ): Promise<{ updated: boolean; statusLock: number }> {
113
- if (input.setRunning) {
114
- if (input.expectedStatusLock === undefined) {
115
- return { updated: false, statusLock: 0 };
116
- }
117
- const changed = this.store.run(
118
- `UPDATE sessions
119
- SET status = 'running', ended_at = NULL, exit_code = NULL, updated_at = ?, status_lock = ?,
120
- parent_session_id = ?, parent_agent_id = ?, agent_id = ?, conversation_id = ?, is_subagent = 1,
121
- prompt = COALESCE(prompt, ?)
122
- WHERE session_id = ? AND status_lock = ?`,
123
- [
124
- nowIso(),
125
- input.expectedStatusLock + 1,
126
- input.parentSessionId ?? null,
127
- input.parentAgentId ?? null,
128
- input.agentId ?? null,
129
- input.conversationId ?? null,
130
- input.prompt ?? null,
131
- input.sessionId,
132
- input.expectedStatusLock,
133
- ],
134
- );
135
- return {
136
- updated: (changed.changes ?? 0) > 0,
137
- statusLock: input.expectedStatusLock + 1,
138
- };
139
- }
140
-
141
- const fields: string[] = [];
142
- const params: unknown[] = [];
143
- if (input.status !== undefined) {
144
- fields.push("status = ?");
145
- params.push(input.status);
146
- }
147
- if (input.endedAt !== undefined) {
148
- fields.push("ended_at = ?");
149
- params.push(input.endedAt);
150
- }
151
- if (input.exitCode !== undefined) {
152
- fields.push("exit_code = ?");
153
- params.push(input.exitCode);
154
- }
155
- if (input.prompt !== undefined) {
156
- fields.push("prompt = ?");
157
- params.push(input.prompt ?? null);
158
- }
159
- if (input.metadata !== undefined) {
160
- fields.push("metadata_json = ?");
161
- params.push(stringifyMetadata(input.metadata));
162
- }
163
- if (input.parentSessionId !== undefined) {
164
- fields.push("parent_session_id = ?");
165
- params.push(input.parentSessionId ?? null);
166
- }
167
- if (input.parentAgentId !== undefined) {
168
- fields.push("parent_agent_id = ?");
169
- params.push(input.parentAgentId ?? null);
170
- }
171
- if (input.agentId !== undefined) {
172
- fields.push("agent_id = ?");
173
- params.push(input.agentId ?? null);
174
- }
175
- if (input.conversationId !== undefined) {
176
- fields.push("conversation_id = ?");
177
- params.push(input.conversationId ?? null);
178
- }
179
- if (fields.length === 0) {
180
- const row = await this.getSession(input.sessionId);
181
- return { updated: !!row, statusLock: row?.statusLock ?? 0 };
182
- }
183
-
184
- let statusLock = 0;
185
- if (input.expectedStatusLock !== undefined) {
186
- statusLock = input.expectedStatusLock + 1;
187
- fields.push("status_lock = ?");
188
- params.push(statusLock);
189
- }
190
- fields.push("updated_at = ?");
191
- params.push(nowIso());
192
-
193
- let sql = `UPDATE sessions SET ${fields.join(", ")} WHERE session_id = ?`;
194
- params.push(input.sessionId);
195
- if (input.expectedStatusLock !== undefined) {
196
- sql += " AND status_lock = ?";
197
- params.push(input.expectedStatusLock);
198
- }
199
- const changed = this.store.run(sql, params);
200
- if ((changed.changes ?? 0) === 0) {
201
- return { updated: false, statusLock: 0 };
202
- }
203
- if (input.expectedStatusLock === undefined) {
204
- const row = await this.getSession(input.sessionId);
205
- statusLock = row?.statusLock ?? 0;
206
- }
207
- return { updated: true, statusLock };
208
- }
209
-
210
- async deleteSession(sessionId: string, cascade: boolean): Promise<boolean> {
211
- const changed =
212
- this.store.run(`DELETE FROM sessions WHERE session_id = ?`, [sessionId])
213
- .changes ?? 0;
214
- if (cascade) {
215
- this.store.run(`DELETE FROM sessions WHERE parent_session_id = ?`, [
216
- sessionId,
217
- ]);
218
- }
219
- return changed > 0;
220
- }
221
-
222
- async enqueueSpawnRequest(input: {
223
- rootSessionId: string;
224
- parentAgentId: string;
225
- task?: string;
226
- systemPrompt?: string;
227
- }): Promise<void> {
228
- this.store.run(
229
- `INSERT INTO subagent_spawn_queue (root_session_id, parent_agent_id, task, system_prompt, created_at, consumed_at)
230
- VALUES (?, ?, ?, ?, ?, NULL)`,
231
- [
232
- input.rootSessionId,
233
- input.parentAgentId,
234
- input.task ?? null,
235
- input.systemPrompt ?? null,
236
- nowIso(),
237
- ],
238
- );
239
- }
240
-
241
- async claimSpawnRequest(
242
- rootSessionId: string,
243
- parentAgentId: string,
244
- ): Promise<string | undefined> {
245
- const row = this.store.queryOne<{ id?: number; task?: string | null }>(
246
- `SELECT id, task FROM subagent_spawn_queue
247
- WHERE root_session_id = ? AND parent_agent_id = ? AND consumed_at IS NULL
248
- ORDER BY id ASC LIMIT 1`,
249
- [rootSessionId, parentAgentId],
250
- );
251
- if (!row || typeof row.id !== "number") {
252
- return undefined;
253
- }
254
- this.store.run(
255
- `UPDATE subagent_spawn_queue SET consumed_at = ? WHERE id = ?`,
256
- [nowIso(), row.id],
257
- );
258
- return row.task ?? undefined;
259
- }
260
- }
261
-
262
- export class CoreSessionService extends UnifiedSessionPersistenceService {
263
- constructor(
264
- private readonly store: SqliteSessionStore,
265
- options: {
266
- sessionArtifactsDir?: string;
267
- messagesArtifactUploader?: SessionMessagesArtifactUploader;
268
- } = {},
269
- ) {
270
- super(
271
- new LocalSessionPersistenceAdapter(store, options.sessionArtifactsDir),
272
- options,
273
- );
274
- }
275
-
276
- createRootSession(input: CreateRootSessionInput): void {
277
- this.store.run(
278
- `INSERT OR REPLACE INTO sessions (
279
- session_id, source, pid, started_at, ended_at, exit_code, status, status_lock, interactive,
280
- provider, model, cwd, workspace_root, team_name, enable_tools, enable_spawn, enable_teams,
281
- parent_session_id, parent_agent_id, agent_id, conversation_id, is_subagent, prompt,
282
- metadata_json, transcript_path, hook_path, messages_path, updated_at
283
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`,
284
- [
285
- input.sessionId,
286
- input.source,
287
- input.pid,
288
- input.startedAt,
289
- null,
290
- null,
291
- "running",
292
- 0,
293
- input.interactive ? 1 : 0,
294
- input.provider,
295
- input.model,
296
- input.cwd,
297
- input.workspaceRoot,
298
- input.teamName ?? null,
299
- input.enableTools ? 1 : 0,
300
- input.enableSpawn ? 1 : 0,
301
- input.enableTeams ? 1 : 0,
302
- null,
303
- null,
304
- null,
305
- null,
306
- 0,
307
- input.prompt ?? null,
308
- input.metadata ? JSON.stringify(input.metadata) : null,
309
- "",
310
- "",
311
- input.messagesPath,
312
- nowIso(),
313
- ],
314
- );
315
- }
316
- }
317
-
318
- export type {
319
- CreateRootSessionInput,
320
- CreateRootSessionWithArtifactsInput,
321
- RootSessionArtifacts,
322
- SessionRow,
323
- UpsertSubagentInput,
324
- } from "./session-row";