@clinebot/core 0.0.35 → 0.0.36

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 (335) hide show
  1. package/README.md +1 -2
  2. package/dist/ClineCore.d.ts +53 -39
  3. package/dist/ClineCore.d.ts.map +1 -1
  4. package/dist/account/index.d.ts +1 -1
  5. package/dist/account/index.d.ts.map +1 -1
  6. package/dist/account/rpc.d.ts +6 -6
  7. package/dist/account/rpc.d.ts.map +1 -1
  8. package/dist/cron/index.d.ts +6 -0
  9. package/dist/cron/index.d.ts.map +1 -0
  10. package/dist/cron/resource-limiter.d.ts +9 -0
  11. package/dist/cron/resource-limiter.d.ts.map +1 -0
  12. package/dist/cron/schedule-command-service.d.ts +10 -0
  13. package/dist/cron/schedule-command-service.d.ts.map +1 -0
  14. package/dist/cron/schedule-service.d.ts +100 -0
  15. package/dist/cron/schedule-service.d.ts.map +1 -0
  16. package/dist/cron/scheduler.d.ts +66 -0
  17. package/dist/cron/scheduler.d.ts.map +1 -0
  18. package/dist/cron/sqlite-schedule-store.d.ts +52 -0
  19. package/dist/cron/sqlite-schedule-store.d.ts.map +1 -0
  20. package/dist/extensions/config/agent-config-loader.d.ts +4 -3
  21. package/dist/extensions/config/agent-config-loader.d.ts.map +1 -1
  22. package/dist/extensions/config/runtime-commands.d.ts +1 -0
  23. package/dist/extensions/config/runtime-commands.d.ts.map +1 -1
  24. package/dist/extensions/config/user-instruction-config-loader.d.ts +1 -0
  25. package/dist/extensions/config/user-instruction-config-loader.d.ts.map +1 -1
  26. package/dist/extensions/context/agentic-compaction.d.ts +2 -2
  27. package/dist/extensions/context/agentic-compaction.d.ts.map +1 -1
  28. package/dist/extensions/context/compaction-shared.d.ts +5 -4
  29. package/dist/extensions/context/compaction-shared.d.ts.map +1 -1
  30. package/dist/extensions/context/compaction.d.ts.map +1 -1
  31. package/dist/extensions/plugin/plugin-config-loader.d.ts +9 -2
  32. package/dist/extensions/plugin/plugin-config-loader.d.ts.map +1 -1
  33. package/dist/extensions/plugin/plugin-loader.d.ts +5 -3
  34. package/dist/extensions/plugin/plugin-loader.d.ts.map +1 -1
  35. package/dist/extensions/plugin/plugin-module-import.d.ts.map +1 -1
  36. package/dist/extensions/plugin/plugin-sandbox.d.ts +15 -2
  37. package/dist/extensions/plugin/plugin-sandbox.d.ts.map +1 -1
  38. package/dist/extensions/plugin/plugin-targeting.d.ts +7 -0
  39. package/dist/extensions/plugin/plugin-targeting.d.ts.map +1 -0
  40. package/dist/extensions/plugin-sandbox-bootstrap.js +211 -211
  41. package/dist/extensions/tools/definitions.d.ts +1 -1
  42. package/dist/extensions/tools/definitions.d.ts.map +1 -1
  43. package/dist/extensions/tools/executors/apply-patch.d.ts +3 -1
  44. package/dist/extensions/tools/executors/apply-patch.d.ts.map +1 -1
  45. package/dist/extensions/tools/executors/search.d.ts +1 -1
  46. package/dist/extensions/tools/executors/search.d.ts.map +1 -1
  47. package/dist/extensions/tools/index.d.ts +2 -0
  48. package/dist/extensions/tools/index.d.ts.map +1 -1
  49. package/dist/extensions/tools/presets.d.ts +26 -43
  50. package/dist/extensions/tools/presets.d.ts.map +1 -1
  51. package/dist/extensions/tools/runtime.d.ts +25 -0
  52. package/dist/extensions/tools/runtime.d.ts.map +1 -0
  53. package/dist/extensions/tools/schemas.d.ts.map +1 -1
  54. package/dist/extensions/tools/team/team-tools.d.ts +1 -0
  55. package/dist/extensions/tools/team/team-tools.d.ts.map +1 -1
  56. package/dist/hooks/hook-file-hooks.d.ts +4 -1
  57. package/dist/hooks/hook-file-hooks.d.ts.map +1 -1
  58. package/dist/hooks/index.d.ts +0 -1
  59. package/dist/hooks/index.d.ts.map +1 -1
  60. package/dist/hooks/subprocess.d.ts +8 -1
  61. package/dist/hooks/subprocess.d.ts.map +1 -1
  62. package/dist/hub/browser-websocket.d.ts +18 -0
  63. package/dist/hub/browser-websocket.d.ts.map +1 -0
  64. package/dist/hub/client.d.ts +45 -0
  65. package/dist/hub/client.d.ts.map +1 -0
  66. package/dist/hub/connect.d.ts +15 -0
  67. package/dist/hub/connect.d.ts.map +1 -0
  68. package/dist/hub/daemon-entry.d.ts +2 -0
  69. package/dist/hub/daemon-entry.d.ts.map +1 -0
  70. package/dist/hub/daemon-entry.js +1045 -0
  71. package/dist/hub/daemon.d.ts +5 -0
  72. package/dist/hub/daemon.d.ts.map +1 -0
  73. package/dist/hub/defaults.d.ts +13 -0
  74. package/dist/hub/defaults.d.ts.map +1 -0
  75. package/dist/hub/discovery.d.ts +29 -0
  76. package/dist/hub/discovery.d.ts.map +1 -0
  77. package/dist/hub/index.d.ts +15 -0
  78. package/dist/hub/index.d.ts.map +1 -0
  79. package/dist/hub/index.js +1044 -0
  80. package/dist/hub/native-transport.d.ts +17 -0
  81. package/dist/hub/native-transport.d.ts.map +1 -0
  82. package/dist/hub/runtime-handlers.d.ts +11 -0
  83. package/dist/hub/runtime-handlers.d.ts.map +1 -0
  84. package/dist/hub/server.d.ts +86 -0
  85. package/dist/hub/server.d.ts.map +1 -0
  86. package/dist/hub/session-client.d.ts +87 -0
  87. package/dist/hub/session-client.d.ts.map +1 -0
  88. package/dist/hub/start-shared-server.d.ts +19 -0
  89. package/dist/hub/start-shared-server.d.ts.map +1 -0
  90. package/dist/hub/transport.d.ts +8 -0
  91. package/dist/hub/transport.d.ts.map +1 -0
  92. package/dist/hub/ui-client.d.ts +44 -0
  93. package/dist/hub/ui-client.d.ts.map +1 -0
  94. package/dist/hub/workspace.d.ts +4 -0
  95. package/dist/hub/workspace.d.ts.map +1 -0
  96. package/dist/index.d.ts +26 -15
  97. package/dist/index.d.ts.map +1 -1
  98. package/dist/index.js +498 -476
  99. package/dist/llms/configured-provider-registry.d.ts +28 -0
  100. package/dist/llms/configured-provider-registry.d.ts.map +1 -0
  101. package/dist/llms/provider-defaults.d.ts +27 -0
  102. package/dist/llms/provider-defaults.d.ts.map +1 -0
  103. package/dist/llms/provider-settings.d.ts +202 -0
  104. package/dist/llms/provider-settings.d.ts.map +1 -0
  105. package/dist/llms/runtime-config.d.ts +4 -0
  106. package/dist/llms/runtime-config.d.ts.map +1 -0
  107. package/dist/llms/runtime-registry.d.ts +20 -0
  108. package/dist/llms/runtime-registry.d.ts.map +1 -0
  109. package/dist/llms/runtime-types.d.ts +85 -0
  110. package/dist/llms/runtime-types.d.ts.map +1 -0
  111. package/dist/runtime/host.d.ts +1 -2
  112. package/dist/runtime/host.d.ts.map +1 -1
  113. package/dist/runtime/rules.d.ts +1 -0
  114. package/dist/runtime/rules.d.ts.map +1 -1
  115. package/dist/runtime/runtime-builder.d.ts.map +1 -1
  116. package/dist/runtime/runtime-host.d.ts +22 -24
  117. package/dist/runtime/runtime-host.d.ts.map +1 -1
  118. package/dist/runtime/runtime-oauth-token-manager.d.ts.map +1 -1
  119. package/dist/runtime/session-runtime.d.ts +1 -19
  120. package/dist/runtime/session-runtime.d.ts.map +1 -1
  121. package/dist/services/global-settings.d.ts +12 -0
  122. package/dist/services/global-settings.d.ts.map +1 -0
  123. package/dist/services/local-runtime-bootstrap.d.ts +9 -3
  124. package/dist/services/local-runtime-bootstrap.d.ts.map +1 -1
  125. package/dist/services/plugin-tools.d.ts +16 -0
  126. package/dist/services/plugin-tools.d.ts.map +1 -0
  127. package/dist/services/providers/local-provider-registry.d.ts +4 -4
  128. package/dist/services/providers/local-provider-registry.d.ts.map +1 -1
  129. package/dist/services/providers/local-provider-service.d.ts +13 -13
  130. package/dist/services/providers/local-provider-service.d.ts.map +1 -1
  131. package/dist/services/session-data.d.ts +1 -1
  132. package/dist/services/session-data.d.ts.map +1 -1
  133. package/dist/services/storage/provider-settings-legacy-migration.d.ts +1 -1
  134. package/dist/services/storage/provider-settings-legacy-migration.d.ts.map +1 -1
  135. package/dist/services/telemetry/index.js +28 -15
  136. package/dist/services/workspace-manifest.d.ts +11 -0
  137. package/dist/services/workspace-manifest.d.ts.map +1 -1
  138. package/dist/session/persistence-service.d.ts +11 -23
  139. package/dist/session/persistence-service.d.ts.map +1 -1
  140. package/dist/session/session-manifest-store.d.ts +22 -0
  141. package/dist/session/session-manifest-store.d.ts.map +1 -0
  142. package/dist/session/session-row.d.ts +93 -0
  143. package/dist/session/session-row.d.ts.map +1 -0
  144. package/dist/session/session-service.d.ts +2 -102
  145. package/dist/session/session-service.d.ts.map +1 -1
  146. package/dist/session/subagent-session-manager.d.ts +36 -0
  147. package/dist/session/subagent-session-manager.d.ts.map +1 -0
  148. package/dist/session/team-persistence-store.d.ts +24 -0
  149. package/dist/session/team-persistence-store.d.ts.map +1 -0
  150. package/dist/transports/hub.d.ts +47 -0
  151. package/dist/transports/hub.d.ts.map +1 -0
  152. package/dist/transports/local.d.ts +10 -6
  153. package/dist/transports/local.d.ts.map +1 -1
  154. package/dist/transports/remote.d.ts +10 -0
  155. package/dist/transports/remote.d.ts.map +1 -0
  156. package/dist/transports/runtime-host-support.d.ts +3 -2
  157. package/dist/transports/runtime-host-support.d.ts.map +1 -1
  158. package/dist/types/chat-schema.d.ts +10 -12
  159. package/dist/types/chat-schema.d.ts.map +1 -1
  160. package/dist/types/config.d.ts +8 -7
  161. package/dist/types/config.d.ts.map +1 -1
  162. package/dist/types/provider-settings.d.ts +4 -5
  163. package/dist/types/provider-settings.d.ts.map +1 -1
  164. package/dist/types/session.d.ts +2 -1
  165. package/dist/types/session.d.ts.map +1 -1
  166. package/dist/types.d.ts +8 -1
  167. package/dist/types.d.ts.map +1 -1
  168. package/package.json +20 -6
  169. package/src/ClineCore.ts +68 -40
  170. package/src/account/index.ts +3 -3
  171. package/src/account/rpc.ts +12 -12
  172. package/src/cron/index.ts +5 -0
  173. package/src/cron/resource-limiter.ts +46 -0
  174. package/src/cron/schedule-command-service.ts +193 -0
  175. package/src/cron/schedule-service.ts +703 -0
  176. package/src/cron/scheduler.ts +637 -0
  177. package/src/cron/sqlite-schedule-store.ts +708 -0
  178. package/src/extensions/config/agent-config-loader.ts +17 -7
  179. package/src/extensions/config/runtime-commands.ts +6 -0
  180. package/src/extensions/config/user-instruction-config-loader.ts +1 -0
  181. package/src/extensions/context/agentic-compaction.ts +3 -3
  182. package/src/extensions/context/basic-compaction.ts +2 -2
  183. package/src/extensions/context/compaction-shared.ts +5 -4
  184. package/src/extensions/context/compaction.ts +3 -3
  185. package/src/extensions/plugin/plugin-config-loader.ts +17 -2
  186. package/src/extensions/plugin/plugin-loader.ts +48 -4
  187. package/src/extensions/plugin/plugin-module-import.ts +0 -2
  188. package/src/extensions/plugin/plugin-sandbox-bootstrap.ts +93 -39
  189. package/src/extensions/plugin/plugin-sandbox.ts +47 -27
  190. package/src/extensions/plugin/plugin-targeting.ts +32 -0
  191. package/src/extensions/tools/definitions.ts +30 -49
  192. package/src/extensions/tools/executors/apply-patch.ts +69 -80
  193. package/src/extensions/tools/executors/search.ts +195 -3
  194. package/src/extensions/tools/index.ts +10 -0
  195. package/src/extensions/tools/presets.ts +31 -46
  196. package/src/extensions/tools/runtime.ts +261 -0
  197. package/src/extensions/tools/schemas.ts +4 -2
  198. package/src/extensions/tools/team/team-tools.ts +21 -0
  199. package/src/hooks/hook-file-hooks.ts +8 -2
  200. package/src/hooks/index.ts +0 -7
  201. package/src/hooks/subprocess-runner.ts +1 -1
  202. package/src/hooks/subprocess.ts +9 -0
  203. package/src/hub/browser-websocket.ts +137 -0
  204. package/src/hub/client.ts +574 -0
  205. package/src/hub/connect.ts +156 -0
  206. package/src/hub/daemon-entry.ts +87 -0
  207. package/src/hub/daemon.ts +181 -0
  208. package/src/hub/defaults.ts +43 -0
  209. package/src/hub/discovery.ts +247 -0
  210. package/src/hub/index.ts +14 -0
  211. package/src/hub/native-transport.ts +31 -0
  212. package/src/hub/runtime-handlers.ts +140 -0
  213. package/src/hub/server.ts +1888 -0
  214. package/src/hub/session-client.ts +460 -0
  215. package/src/hub/start-shared-server.ts +58 -0
  216. package/src/hub/transport.ts +14 -0
  217. package/src/hub/ui-client.ts +122 -0
  218. package/src/hub/workspace.ts +19 -0
  219. package/src/index.ts +124 -68
  220. package/src/llms/configured-provider-registry.ts +193 -0
  221. package/src/llms/provider-defaults.ts +637 -0
  222. package/src/llms/provider-settings.ts +263 -0
  223. package/src/llms/runtime-config.ts +43 -0
  224. package/src/llms/runtime-registry.ts +171 -0
  225. package/src/llms/runtime-types.ts +121 -0
  226. package/src/runtime/host.ts +107 -269
  227. package/src/runtime/index.ts +1 -0
  228. package/src/runtime/rules.ts +12 -0
  229. package/src/runtime/runtime-builder.ts +24 -8
  230. package/src/runtime/runtime-host.ts +89 -61
  231. package/src/runtime/runtime-oauth-token-manager.ts +11 -15
  232. package/src/runtime/session-runtime.ts +0 -24
  233. package/src/services/global-settings.ts +122 -0
  234. package/src/services/local-runtime-bootstrap.ts +51 -13
  235. package/src/services/plugin-tools.ts +85 -0
  236. package/src/services/providers/local-provider-registry.ts +6 -6
  237. package/src/services/providers/local-provider-service.ts +42 -37
  238. package/src/services/session-data.ts +15 -9
  239. package/src/services/storage/provider-settings-legacy-migration.ts +6 -4
  240. package/src/services/storage/provider-settings-manager.ts +1 -1
  241. package/src/services/workspace-manifest.ts +18 -0
  242. package/src/session/file-session-service.ts +1 -1
  243. package/src/session/index.ts +6 -27
  244. package/src/session/persistence-service.ts +119 -504
  245. package/src/session/session-manifest-store.ts +158 -0
  246. package/src/session/session-row.ts +199 -0
  247. package/src/session/session-service.ts +17 -376
  248. package/src/session/session-team-coordination.ts +1 -1
  249. package/src/session/subagent-session-manager.ts +397 -0
  250. package/src/session/team-persistence-store.ts +176 -0
  251. package/src/transports/hub.ts +656 -0
  252. package/src/transports/local.ts +135 -40
  253. package/src/transports/remote.ts +26 -0
  254. package/src/transports/runtime-host-support.ts +63 -9
  255. package/src/types/chat-schema.ts +4 -5
  256. package/src/types/config.ts +8 -7
  257. package/src/types/provider-settings.ts +11 -7
  258. package/src/types/session.ts +2 -4
  259. package/src/types.ts +27 -1
  260. package/dist/hooks/persistent.d.ts +0 -64
  261. package/dist/hooks/persistent.d.ts.map +0 -1
  262. package/dist/runtime/rpc-runtime-ensure.d.ts +0 -65
  263. package/dist/runtime/rpc-runtime-ensure.d.ts.map +0 -1
  264. package/dist/runtime/rpc-spawn-lease.d.ts +0 -8
  265. package/dist/runtime/rpc-spawn-lease.d.ts.map +0 -1
  266. package/dist/session/rpc-session-service.d.ts +0 -16
  267. package/dist/session/rpc-session-service.d.ts.map +0 -1
  268. package/dist/session/sqlite-rpc-session-backend.d.ts +0 -31
  269. package/dist/session/sqlite-rpc-session-backend.d.ts.map +0 -1
  270. package/dist/transports/rpc.d.ts +0 -51
  271. package/dist/transports/rpc.d.ts.map +0 -1
  272. package/src/ClineCore.test.ts +0 -226
  273. package/src/account/cline-account-service.test.ts +0 -185
  274. package/src/account/featurebase-token.test.ts +0 -175
  275. package/src/account/rpc.test.ts +0 -63
  276. package/src/auth/bounded-ttl-cache.test.ts +0 -38
  277. package/src/auth/client.test.ts +0 -69
  278. package/src/auth/cline.test.ts +0 -267
  279. package/src/auth/codex.test.ts +0 -170
  280. package/src/auth/oca.test.ts +0 -340
  281. package/src/auth/server.test.ts +0 -287
  282. package/src/auth/utils.test.ts +0 -128
  283. package/src/extensions/config/agent-config-loader.test.ts +0 -236
  284. package/src/extensions/config/hooks-config-loader.test.ts +0 -20
  285. package/src/extensions/config/runtime-commands.test.ts +0 -115
  286. package/src/extensions/config/unified-config-file-watcher.test.ts +0 -196
  287. package/src/extensions/config/user-instruction-config-loader.test.ts +0 -246
  288. package/src/extensions/context/compaction.test.ts +0 -483
  289. package/src/extensions/mcp/config-loader.test.ts +0 -238
  290. package/src/extensions/mcp/manager.test.ts +0 -105
  291. package/src/extensions/plugin/plugin-config-loader.test.ts +0 -184
  292. package/src/extensions/plugin/plugin-loader.test.ts +0 -292
  293. package/src/extensions/plugin/plugin-sandbox.test.ts +0 -423
  294. package/src/extensions/tools/definitions.test.ts +0 -780
  295. package/src/extensions/tools/executors/bash.test.ts +0 -87
  296. package/src/extensions/tools/executors/editor.test.ts +0 -35
  297. package/src/extensions/tools/executors/file-read.test.ts +0 -125
  298. package/src/extensions/tools/model-tool-routing.test.ts +0 -86
  299. package/src/extensions/tools/presets.test.ts +0 -70
  300. package/src/extensions/tools/team/multi-agent.lifecycle.test.ts +0 -455
  301. package/src/extensions/tools/team/spawn-agent-tool.test.ts +0 -381
  302. package/src/extensions/tools/team/team-tools.test.ts +0 -918
  303. package/src/hooks/checkpoint-hooks.test.ts +0 -168
  304. package/src/hooks/hook-file-hooks.test.ts +0 -311
  305. package/src/hooks/persistent.ts +0 -661
  306. package/src/runtime/history.test.ts +0 -114
  307. package/src/runtime/host.test.ts +0 -230
  308. package/src/runtime/rpc-runtime-ensure.test.ts +0 -123
  309. package/src/runtime/rpc-runtime-ensure.ts +0 -659
  310. package/src/runtime/rpc-spawn-lease.test.ts +0 -81
  311. package/src/runtime/rpc-spawn-lease.ts +0 -156
  312. package/src/runtime/runtime-builder.team-persistence.test.ts +0 -245
  313. package/src/runtime/runtime-builder.test.ts +0 -615
  314. package/src/runtime/runtime-oauth-token-manager.test.ts +0 -137
  315. package/src/runtime/runtime-parity.test.ts +0 -143
  316. package/src/services/providers/local-provider-service.test.ts +0 -1062
  317. package/src/services/session-data.test.ts +0 -160
  318. package/src/services/storage/provider-settings-legacy-migration.test.ts +0 -424
  319. package/src/services/storage/provider-settings-manager.test.ts +0 -191
  320. package/src/services/telemetry/OpenTelemetryAdapter.test.ts +0 -157
  321. package/src/services/telemetry/OpenTelemetryProvider.test.ts +0 -326
  322. package/src/services/telemetry/TelemetryLoggerSink.test.ts +0 -42
  323. package/src/services/telemetry/TelemetryService.test.ts +0 -134
  324. package/src/services/telemetry/distinct-id.test.ts +0 -57
  325. package/src/services/workspace/file-indexer.d.ts +0 -11
  326. package/src/services/workspace/file-indexer.test.ts +0 -156
  327. package/src/services/workspace/mention-enricher.test.ts +0 -106
  328. package/src/session/persistence-service.test.ts +0 -300
  329. package/src/session/rpc-session-service.ts +0 -114
  330. package/src/session/session-service.team-persistence.test.ts +0 -48
  331. package/src/session/sqlite-rpc-session-backend.ts +0 -301
  332. package/src/transports/local.e2e.test.ts +0 -380
  333. package/src/transports/local.test.ts +0 -2559
  334. package/src/transports/rpc.test.ts +0 -82
  335. package/src/transports/rpc.ts +0 -665
package/src/index.ts CHANGED
@@ -7,6 +7,7 @@
7
7
  export * as Llms from "@clinebot/llms";
8
8
  // Shared contracts and path helpers re-exported for app consumers.
9
9
  export type {
10
+ AddProviderActionRequest,
10
11
  AgentConfig,
11
12
  AgentEvent,
12
13
  AgentExtension,
@@ -15,34 +16,35 @@ export type {
15
16
  AgentMode,
16
17
  AgentResult,
17
18
  BasicLogger,
19
+ ChatRunTurnRequest,
20
+ ChatRuntimeConfig,
21
+ ChatStartSessionArtifacts,
22
+ ChatStartSessionRequest,
23
+ ChatTurnResult,
24
+ ClineAccountActionRequest,
18
25
  ConnectorHookEvent,
26
+ EnterpriseAuthenticateRequest,
27
+ EnterpriseAuthenticateResponse,
28
+ EnterpriseStatusRequest,
29
+ EnterpriseStatusResponse,
30
+ EnterpriseSyncRequest,
31
+ EnterpriseSyncResponse,
19
32
  emptyWorkspaceManifest,
33
+ GetProviderModelsActionRequest,
20
34
  HookSessionContext,
21
35
  ITelemetryService,
22
- RpcAddProviderActionRequest,
23
- RpcChatMessage,
24
- RpcChatRunTurnRequest,
25
- RpcChatRuntimeConfigBase,
26
- RpcChatRuntimeLoggerConfig,
27
- RpcChatStartSessionArtifacts,
28
- RpcChatStartSessionRequest,
29
- RpcChatTurnResult,
30
- RpcClineAccountActionRequest,
31
- RpcEnterpriseAuthenticateRequest,
32
- RpcEnterpriseAuthenticateResponse,
33
- RpcEnterpriseStatusRequest,
34
- RpcEnterpriseStatusResponse,
35
- RpcEnterpriseSyncRequest,
36
- RpcEnterpriseSyncResponse,
37
- RpcOAuthProviderId,
38
- RpcProviderActionRequest,
39
- RpcProviderCapability,
40
- RpcProviderCatalogResponse,
41
- RpcProviderListItem,
42
- RpcProviderModel,
43
- RpcProviderOAuthLoginResponse,
44
- RpcSaveProviderSettingsActionRequest,
36
+ ListProvidersActionRequest,
37
+ OAuthProviderId,
38
+ ProviderActionRequest,
39
+ ProviderCatalogResponse,
40
+ ProviderListItem,
41
+ ProviderModel,
42
+ ProviderOAuthLoginResponse,
43
+ RuntimeLoggerConfig,
44
+ SaveProviderSettingsActionRequest,
45
45
  SessionLineage,
46
+ TEAM_LIFECYCLE_EVENT_TYPE,
47
+ TEAM_PROGRESS_EVENT_TYPE,
46
48
  TeamProgressProjectionEvent,
47
49
  TelemetryArray,
48
50
  TelemetryMetadata,
@@ -69,8 +71,6 @@ export {
69
71
  noopBasicLogger,
70
72
  normalizeUserInput,
71
73
  parseUserCommandEnvelope,
72
- RPC_TEAM_LIFECYCLE_EVENT_TYPE,
73
- RPC_TEAM_PROGRESS_EVENT_TYPE,
74
74
  } from "@clinebot/shared";
75
75
  export * from "@clinebot/shared/storage";
76
76
  export {
@@ -85,11 +85,11 @@ export {
85
85
  type ClineAccountUsageTransaction,
86
86
  type ClineAccountUser,
87
87
  type ClineOrganization,
88
- executeRpcClineAccountAction,
88
+ executeClineAccountAction,
89
89
  type FeaturebaseTokenResponse,
90
- isRpcClineAccountActionRequest,
90
+ isClineAccountActionRequest,
91
+ type ProviderActionExecutor,
91
92
  RpcClineAccountService,
92
- type RpcProviderActionExecutor,
93
93
  type UserRemoteConfigOrganization,
94
94
  type UserRemoteConfigResponse,
95
95
  } from "./account";
@@ -154,8 +154,10 @@ export {
154
154
  ClineCore,
155
155
  type ClineCoreOptions,
156
156
  type ClineCoreStartInput,
157
- type RpcOptions,
157
+ type HubOptions,
158
+ type RemoteOptions,
158
159
  } from "./ClineCore";
160
+ export * from "./cron";
159
161
  export type {
160
162
  LoadAgentPluginFromPathOptions,
161
163
  PluginInitializationFailure,
@@ -296,16 +298,11 @@ export {
296
298
  toTeamProgressLifecycleEvent,
297
299
  } from "./extensions/tools/team";
298
300
  export {
299
- createPersistentSubprocessHooks,
300
301
  createSubprocessHooks,
301
302
  type HookEventName,
302
303
  HookEventNameSchema,
303
304
  type HookEventPayload,
304
305
  HookEventPayloadSchema,
305
- PersistentHookClient,
306
- type PersistentHookClientOptions,
307
- type PersistentSubprocessHookControl,
308
- type PersistentSubprocessHooksOptions,
309
306
  parseHookEventPayload,
310
307
  type RunHookOptions,
311
308
  type RunHookResult,
@@ -320,41 +317,19 @@ export type {
320
317
  CheckpointEntry,
321
318
  CheckpointMetadata,
322
319
  } from "./hooks/checkpoint-hooks";
320
+ export * from "./hub";
323
321
  export type { SessionBackend } from "./runtime/host";
324
322
  export {
325
323
  createRuntimeHost,
326
324
  createRuntimeHost as createSessionHost,
327
325
  resolveSessionBackend,
328
326
  } from "./runtime/host";
329
- export {
330
- clearRpcDiscoveryIfAddressMatches,
331
- type EnsureRpcRuntimeOptions,
332
- ensureRpcRuntimeAddress,
333
- isCompatibleRuntime,
334
- type ResolveRpcRuntimeResult,
335
- RPC_BUILD_ID_ENV,
336
- RPC_DISCOVERY_PATH_ENV,
337
- RPC_OWNER_ID_ENV,
338
- RPC_STARTUP_LOCK_BYPASS_ENV,
339
- type RpcDiscoveryRecord,
340
- type RpcOwnerContext,
341
- type RpcStartupLockHandle,
342
- recordRpcDiscovery,
343
- resolveEnsuredRpcRuntime,
344
- resolveRpcOwnerContext,
345
- resolveRpcRuntimeBuildKey,
346
- waitForCompatibleRpcRuntime,
347
- withRpcStartupLock,
348
- } from "./runtime/rpc-runtime-ensure";
349
- export {
350
- type RpcSpawnLease,
351
- tryAcquireRpcSpawnLease,
352
- } from "./runtime/rpc-spawn-lease";
353
327
  export {
354
328
  formatRulesForSystemPrompt,
355
329
  isRuleEnabled,
356
330
  listEnabledRulesFromWatcher,
357
331
  loadRulesForSystemPromptFromWatcher,
332
+ mergeRulesForSystemPrompt,
358
333
  } from "./runtime/rules";
359
334
  export {
360
335
  createTeamName,
@@ -364,6 +339,7 @@ export type {
364
339
  RuntimeHost,
365
340
  RuntimeHost as SessionHost,
366
341
  RuntimeHostMode,
342
+ RuntimeHostSubscribeOptions,
367
343
  SendSessionInput,
368
344
  SessionAccumulatedUsage,
369
345
  StartSessionInput,
@@ -375,9 +351,6 @@ export type {
375
351
  RuntimeBuilder,
376
352
  RuntimeBuilderInput,
377
353
  SessionRuntime,
378
- TeamToolsFactory,
379
- TeamToolsFactoryOptions,
380
- TeamToolsFactoryResult,
381
354
  } from "./runtime/session-runtime";
382
355
  export {
383
356
  type SandboxCallOptions,
@@ -388,6 +361,18 @@ export {
388
361
  type DesktopToolApprovalOptions,
389
362
  requestDesktopToolApproval,
390
363
  } from "./runtime/tool-approval";
364
+ export type { GlobalSettings } from "./services/global-settings";
365
+ export {
366
+ filterDisabledTools,
367
+ filterExtensionToolRegistrations,
368
+ isToolDisabledGlobally,
369
+ readGlobalSettings,
370
+ resolveDisabledToolNames,
371
+ toggleDisabledTool,
372
+ writeGlobalSettings,
373
+ } from "./services/global-settings";
374
+ export type { PluginToolSummary } from "./services/plugin-tools";
375
+ export { listPluginTools } from "./services/plugin-tools";
391
376
  export {
392
377
  addLocalProvider,
393
378
  type DeleteLocalProviderRequest,
@@ -474,7 +459,6 @@ export {
474
459
  generateWorkspaceInfo,
475
460
  normalizeWorkspacePath,
476
461
  } from "./services/workspace-manifest";
477
- export { RpcCoreSessionService } from "./session/rpc-session-service";
478
462
  export {
479
463
  deriveSubsessionStatus,
480
464
  makeSubSessionId,
@@ -482,24 +466,24 @@ export {
482
466
  sanitizeSessionToken,
483
467
  } from "./session/session-graph";
484
468
  export type { SessionManifest } from "./session/session-manifest";
469
+ export type { SessionRow } from "./session/session-row";
485
470
  export type {
486
471
  CreateRootSessionWithArtifactsInput,
487
472
  RootSessionArtifacts,
488
- SessionRow,
489
473
  } from "./session/session-service";
490
474
  export { CoreSessionService } from "./session/session-service";
491
475
  export {
492
- createSqliteRpcSessionBackend,
493
- SqliteRpcSessionBackend,
494
- type SqliteRpcSessionBackendOptions,
495
- } from "./session/sqlite-rpc-session-backend";
476
+ FileTeamPersistenceStore,
477
+ type FileTeamPersistenceStoreOptions,
478
+ } from "./session/team-persistence-store";
496
479
  export type {
497
480
  WorkspaceManager,
498
481
  WorkspaceManagerEvent,
499
482
  } from "./session/workspace-manager";
500
483
  export { InMemoryWorkspaceManager } from "./session/workspace-manager";
484
+ export { HubRuntimeHost } from "./transports/hub";
501
485
  export { LocalRuntimeHost } from "./transports/local";
502
- export { RpcRuntimeHost } from "./transports/rpc";
486
+ export { RemoteRuntimeHost } from "./transports/remote";
503
487
  export type {
504
488
  ChatMessage,
505
489
  ChatSessionConfig,
@@ -524,6 +508,7 @@ export { createContextCompactionPrepareTurn } from "./extensions/context/compact
524
508
  export {
525
509
  ALL_DEFAULT_TOOL_NAMES,
526
510
  type AskQuestionExecutor,
511
+ type BuiltinToolAvailabilityContext,
527
512
  type CreateBuiltinToolsOptions,
528
513
  type CreateDefaultToolsOptions,
529
514
  createBuiltinTools,
@@ -535,11 +520,82 @@ export {
535
520
  type DefaultToolName,
536
521
  DefaultToolNames,
537
522
  type DefaultToolsConfig,
523
+ getCoreAcpToolNames,
524
+ getCoreBuiltinToolCatalog,
525
+ getCoreDefaultEnabledToolIds,
526
+ getCoreHeadlessToolNames,
527
+ resolveCoreSelectedToolIds,
528
+ TEAM_TOOL_NAMES,
529
+ type ToolCatalogEntry,
538
530
  type ToolExecutors,
539
531
  type ToolPolicyPresetName,
540
532
  type ToolPresetName,
541
533
  ToolPresets,
542
534
  } from "./extensions/tools";
535
+ export {
536
+ clearLiveModelsCatalogCache,
537
+ clearPrivateModelsCatalogCache,
538
+ DEFAULT_MODELS_CATALOG_URL,
539
+ getLiveModelsCatalog,
540
+ getProviderConfig,
541
+ OPENAI_COMPATIBLE_PROVIDERS,
542
+ resolveProviderConfig,
543
+ } from "./llms/provider-defaults";
544
+ export type {
545
+ AuthSettings,
546
+ AwsSettings,
547
+ AzureSettings,
548
+ BuiltInProviderId,
549
+ GcpSettings,
550
+ ModelCatalogConfig,
551
+ ModelCatalogSettings,
552
+ OcaSettings,
553
+ ProviderCapability,
554
+ ProviderConfig,
555
+ ProviderDefaultsConfig,
556
+ ProviderId,
557
+ ProviderSettings,
558
+ ReasoningSettings,
559
+ SapSettings,
560
+ } from "./llms/provider-settings";
561
+ export {
562
+ AuthSettingsSchema,
563
+ AwsSettingsSchema,
564
+ AzureSettingsSchema,
565
+ BUILT_IN_PROVIDER,
566
+ BUILT_IN_PROVIDER_IDS,
567
+ createProviderConfig,
568
+ GcpSettingsSchema,
569
+ isBuiltInProviderId,
570
+ ModelCatalogSettingsSchema,
571
+ normalizeProviderId,
572
+ OcaSettingsSchema,
573
+ ProviderIdSchema,
574
+ ProviderSettingsSchema,
575
+ parseSettings,
576
+ ReasoningSettingsSchema,
577
+ SapSettingsSchema,
578
+ safeCreateProviderConfig,
579
+ safeParseSettings,
580
+ toProviderConfig,
581
+ } from "./llms/provider-settings";
582
+ export {
583
+ defineLlmsConfig,
584
+ loadLlmsConfigFromFile,
585
+ } from "./llms/runtime-config";
586
+ export { createLlmsSdk, DefaultLlmsSdk } from "./llms/runtime-registry";
587
+ export type {
588
+ BuiltInProviderSummary,
589
+ CreateHandlerInput,
590
+ LlmsConfig,
591
+ LlmsSdk,
592
+ ProviderConfigDefaults,
593
+ ProviderSelectionConfig,
594
+ RegisterBuiltinProviderInput,
595
+ RegisteredProviderSummary,
596
+ RegisterModelInput,
597
+ RegisterProviderInput,
598
+ } from "./llms/runtime-types";
543
599
  export {
544
600
  TelemetryService,
545
601
  type TelemetryServiceOptions,
@@ -0,0 +1,193 @@
1
+ import type { ProviderConfig } from "./provider-settings";
2
+ import type {
3
+ BuiltInProviderSummary,
4
+ CreateHandlerInput,
5
+ ProviderConfigDefaults,
6
+ ProviderSelectionConfig,
7
+ RegisteredProviderSummary,
8
+ } from "./runtime-types";
9
+
10
+ interface ConfiguredProviderRecord {
11
+ id: string;
12
+ models: Set<string>;
13
+ defaultModel: string;
14
+ defaults: ProviderConfigDefaults;
15
+ }
16
+
17
+ interface RegisterConfiguredProviderInput {
18
+ id: string;
19
+ models: readonly string[];
20
+ defaultModel?: string;
21
+ defaults?: ProviderConfigDefaults;
22
+ }
23
+
24
+ function cloneDefaults(
25
+ defaults: ProviderConfigDefaults | undefined,
26
+ ): ProviderConfigDefaults {
27
+ return defaults ? { ...defaults } : {};
28
+ }
29
+
30
+ function resolveApiKey(
31
+ apiKey?: string,
32
+ apiKeyEnv?: string,
33
+ ): string | undefined {
34
+ if (apiKey) {
35
+ return apiKey;
36
+ }
37
+ if (!apiKeyEnv) {
38
+ return undefined;
39
+ }
40
+ const runtimeProcess = globalThis.process;
41
+ if (!runtimeProcess?.env) {
42
+ return undefined;
43
+ }
44
+ return runtimeProcess.env[apiKeyEnv];
45
+ }
46
+
47
+ function assertNonEmptyModels(
48
+ providerId: string,
49
+ models: readonly string[],
50
+ ): void {
51
+ if (!models.length) {
52
+ throw new Error(
53
+ `Provider "${providerId}" must include at least one model.`,
54
+ );
55
+ }
56
+ }
57
+
58
+ export function toBuiltInProviderSummary(input: {
59
+ collection: BuiltInProviderSummary["id"] extends string
60
+ ? {
61
+ provider: Pick<
62
+ import("@clinebot/llms").ProviderInfo,
63
+ | "id"
64
+ | "name"
65
+ | "description"
66
+ | "protocol"
67
+ | "baseUrl"
68
+ | "capabilities"
69
+ | "env"
70
+ | "defaultModelId"
71
+ >;
72
+ models: Record<string, unknown>;
73
+ }
74
+ : never;
75
+ }): BuiltInProviderSummary {
76
+ const models = Object.keys(input.collection.models);
77
+ return {
78
+ id: input.collection.provider.id,
79
+ name: input.collection.provider.name,
80
+ description: input.collection.provider.description,
81
+ protocol: input.collection.provider.protocol,
82
+ baseUrl: input.collection.provider.baseUrl,
83
+ capabilities: input.collection.provider.capabilities,
84
+ env: input.collection.provider.env,
85
+ models,
86
+ defaultModel: input.collection.provider.defaultModelId,
87
+ modelCount: models.length,
88
+ };
89
+ }
90
+
91
+ export class ConfiguredProviderRegistry {
92
+ private readonly providers = new Map<string, ConfiguredProviderRecord>();
93
+
94
+ register(input: RegisterConfiguredProviderInput): void {
95
+ assertNonEmptyModels(input.id, input.models);
96
+ const defaultModel = input.defaultModel ?? input.models[0];
97
+ if (!defaultModel) {
98
+ throw new Error(`Provider "${input.id}" must define a default model.`);
99
+ }
100
+ if (!input.models.includes(defaultModel)) {
101
+ throw new Error(
102
+ `Default model "${defaultModel}" is not included in configured models for "${input.id}".`,
103
+ );
104
+ }
105
+ const existing = this.providers.get(input.id);
106
+ this.providers.set(input.id, {
107
+ id: input.id,
108
+ models: new Set([...(existing?.models ?? []), ...input.models]),
109
+ defaultModel,
110
+ defaults: {
111
+ ...(existing?.defaults ?? {}),
112
+ ...cloneDefaults(input.defaults),
113
+ },
114
+ });
115
+ }
116
+
117
+ registerSelectionConfig(provider: ProviderSelectionConfig): void {
118
+ this.register({
119
+ id: provider.id,
120
+ models: provider.models,
121
+ defaultModel: provider.defaultModel,
122
+ defaults: {
123
+ apiKey: resolveApiKey(provider.apiKey, provider.apiKeyEnv),
124
+ routingProviderId: provider.builtinProviderId,
125
+ baseUrl: provider.baseUrl,
126
+ headers: provider.headers,
127
+ timeoutMs: provider.timeoutMs,
128
+ capabilities: provider.capabilities,
129
+ ...cloneDefaults(provider.settings),
130
+ },
131
+ });
132
+ }
133
+
134
+ registerModel(providerId: string, modelId: string): void {
135
+ const existing = this.providers.get(providerId);
136
+ if (!existing) {
137
+ this.providers.set(providerId, {
138
+ id: providerId,
139
+ models: new Set([modelId]),
140
+ defaultModel: modelId,
141
+ defaults: {},
142
+ });
143
+ return;
144
+ }
145
+ existing.models.add(modelId);
146
+ }
147
+
148
+ createHandlerConfig(input: CreateHandlerInput): ProviderConfig {
149
+ const provider = this.require(input.providerId);
150
+ const modelId = input.modelId ?? provider.defaultModel;
151
+ if (!provider.models.has(modelId)) {
152
+ throw new Error(
153
+ `Model "${modelId}" is not configured for provider "${input.providerId}".`,
154
+ );
155
+ }
156
+ return {
157
+ providerId: input.providerId,
158
+ modelId,
159
+ ...provider.defaults,
160
+ ...input.overrides,
161
+ };
162
+ }
163
+
164
+ list(): RegisteredProviderSummary[] {
165
+ return Array.from(this.providers.values()).map((provider) => ({
166
+ id: provider.id,
167
+ models: Array.from(provider.models),
168
+ defaultModel: provider.defaultModel,
169
+ }));
170
+ }
171
+
172
+ getModels(providerId: string): string[] {
173
+ return Array.from(this.require(providerId).models);
174
+ }
175
+
176
+ hasProvider(providerId: string): boolean {
177
+ return this.providers.has(providerId);
178
+ }
179
+
180
+ hasModel(providerId: string, modelId: string): boolean {
181
+ return this.providers.get(providerId)?.models.has(modelId) ?? false;
182
+ }
183
+
184
+ private require(providerId: string): ConfiguredProviderRecord {
185
+ const provider = this.providers.get(providerId);
186
+ if (!provider) {
187
+ throw new Error(
188
+ `Provider "${providerId}" is not configured in this SDK instance.`,
189
+ );
190
+ }
191
+ return provider;
192
+ }
193
+ }