@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,586 +0,0 @@
1
- import { existsSync } from "node:fs";
2
- import { createRequire } from "node:module";
3
- import { dirname, join } from "node:path";
4
- import { fileURLToPath } from "node:url";
5
- import type {
6
- AgentConfig,
7
- AgentExtensionAutomationEventType,
8
- HookStage,
9
- Message,
10
- PluginSetupContext,
11
- Tool,
12
- WorkspaceInfo,
13
- } from "@clinebot/shared";
14
- import { SubprocessSandbox } from "../../runtime/subprocess-sandbox";
15
- import type { PluginLoadDiagnostics } from "./plugin-load-report";
16
- import type { PluginTargeting } from "./plugin-targeting";
17
-
18
- export type SandboxedPluginSetupContext = Pick<
19
- PluginSetupContext,
20
- "session" | "client" | "user" | "workspaceInfo" | "logger"
21
- >;
22
-
23
- export interface PluginSandboxOptions extends PluginTargeting {
24
- pluginPaths: string[];
25
- exportName?: string;
26
- importTimeoutMs?: number;
27
- hookTimeoutMs?: number;
28
- contributionTimeoutMs?: number;
29
- onEvent?: (event: { name: string; payload?: unknown }) => void;
30
- /**
31
- * The session's working directory. Forwarded to the sandbox subprocess so
32
- * that `process.cwd()` returns the correct path inside the sandbox even
33
- * when `--cwd` was passed without calling `process.chdir()` on the host.
34
- */
35
- cwd?: string;
36
- /**
37
- * Structured workspace and git metadata (branch, commit, remotes) generated
38
- * at session startup. Forwarded to plugins via PluginSetupCtx.workspaceInfo
39
- * so they can inspect git state without running their own commands.
40
- */
41
- workspaceInfo?: WorkspaceInfo;
42
- session?: SandboxedPluginSetupContext["session"];
43
- client?: SandboxedPluginSetupContext["client"];
44
- user?: SandboxedPluginSetupContext["user"];
45
- /** Enables a logger bridge that forwards sandbox log calls to the host. */
46
- logger?: SandboxedPluginSetupContext["logger"];
47
- }
48
-
49
- type AgentExtension = NonNullable<AgentConfig["extensions"]>[number];
50
- type AgentExtensionApi = Parameters<NonNullable<AgentExtension["setup"]>>[0];
51
-
52
- type SandboxedContributionDescriptor = {
53
- id: string;
54
- name: string;
55
- description?: string;
56
- inputSchema?: unknown;
57
- timeoutMs?: number;
58
- retryable?: boolean;
59
- metadata?: Record<string, unknown>;
60
- };
61
-
62
- type SandboxedAutomationEventTypeDescriptor =
63
- AgentExtensionAutomationEventType & {
64
- id: string;
65
- };
66
-
67
- type SandboxedPluginDescriptor = {
68
- pluginId: string;
69
- pluginPath: string;
70
- name: string;
71
- manifest: AgentExtension["manifest"];
72
- contributions: {
73
- tools: SandboxedContributionDescriptor[];
74
- commands: SandboxedContributionDescriptor[];
75
- messageBuilders: SandboxedContributionDescriptor[];
76
- providers: SandboxedContributionDescriptor[];
77
- automationEventTypes: SandboxedAutomationEventTypeDescriptor[];
78
- shortcuts?: SandboxedContributionDescriptor[];
79
- flags?: SandboxedContributionDescriptor[];
80
- };
81
- };
82
-
83
- type SandboxedInitializeResult = {
84
- plugins: SandboxedPluginDescriptor[];
85
- } & PluginLoadDiagnostics;
86
-
87
- function normalizeDescriptor(
88
- descriptor: SandboxedPluginDescriptor,
89
- ): SandboxedPluginDescriptor {
90
- return {
91
- ...descriptor,
92
- contributions: {
93
- tools: descriptor.contributions?.tools ?? [],
94
- commands: descriptor.contributions?.commands ?? [],
95
- messageBuilders: descriptor.contributions?.messageBuilders ?? [],
96
- providers: descriptor.contributions?.providers ?? [],
97
- automationEventTypes:
98
- descriptor.contributions?.automationEventTypes ?? [],
99
- shortcuts: descriptor.contributions?.shortcuts ?? [],
100
- flags: descriptor.contributions?.flags ?? [],
101
- },
102
- };
103
- }
104
-
105
- function isUnknownPluginIdError(error: unknown): boolean {
106
- const message = error instanceof Error ? error.message : String(error);
107
- return message.includes("Unknown sandbox plugin id:");
108
- }
109
-
110
- /**
111
- * Resolve the bootstrap for the sandbox subprocess.
112
- *
113
- * In production (bundled), the compiled `.js` file lives next to this module
114
- * and can be passed directly as a file to spawn. In development/test
115
- * (unbundled, where only the `.ts` source exists), we load the TypeScript
116
- * bootstrap through jiti from an inline script.
117
- */
118
- function resolveBootstrap(): { file: string } | { script: string } {
119
- const dir = dirname(fileURLToPath(import.meta.url));
120
- const requireFromHere = createRequire(import.meta.url);
121
- // In dev, the bootstrap sits next to this file in src/extensions/.
122
- // In production, the main bundle is at dist/ and the bootstrap is emitted
123
- // under dist/extensions/. Keep the older dist/agents/ fallback for
124
- // compatibility with previously built layouts.
125
- const candidates = [
126
- join(dir, "plugin-sandbox-bootstrap.js"),
127
- join(dir, "extensions", "plugin-sandbox-bootstrap.js"),
128
- join(dir, "agents", "plugin-sandbox-bootstrap.js"),
129
- ];
130
- for (const candidate of candidates) {
131
- if (existsSync(candidate)) return { file: candidate };
132
- }
133
- const tsPath = join(dir, "plugin-sandbox-bootstrap.ts");
134
- let jitiSpecifier = "jiti";
135
- try {
136
- jitiSpecifier = requireFromHere.resolve("jiti");
137
- } catch {
138
- // Fall back to bare specifier and let runtime resolution handle it.
139
- }
140
- return {
141
- script: [
142
- `const createJiti = require(${JSON.stringify(jitiSpecifier)});`,
143
- `const jiti = createJiti(${JSON.stringify(tsPath)}, { cache: false, requireCache: false, esmResolve: true, interopDefault: false });`,
144
- `Promise.resolve(jiti.import(${JSON.stringify(tsPath)}, {})).catch((error) => {`,
145
- " console.error(error);",
146
- " process.exitCode = 1;",
147
- "});",
148
- ].join("\n"),
149
- };
150
- }
151
-
152
- const BOOTSTRAP = resolveBootstrap();
153
-
154
- /**
155
- * Map from hook stage names in the manifest to the property name on AgentExtension
156
- * and the corresponding hook method name inside the sandbox subprocess.
157
- */
158
- const HOOK_BINDINGS: Array<{
159
- stage: HookStage;
160
- extensionKey: keyof AgentExtension;
161
- sandboxHookName: string;
162
- }> = [
163
- { stage: "input", extensionKey: "onInput", sandboxHookName: "onInput" },
164
- {
165
- stage: "session_start",
166
- extensionKey: "onSessionStart",
167
- sandboxHookName: "onSessionStart",
168
- },
169
- {
170
- stage: "run_start",
171
- extensionKey: "onRunStart",
172
- sandboxHookName: "onRunStart",
173
- },
174
- {
175
- stage: "iteration_start",
176
- extensionKey: "onIterationStart",
177
- sandboxHookName: "onIterationStart",
178
- },
179
- {
180
- stage: "turn_start",
181
- extensionKey: "onTurnStart",
182
- sandboxHookName: "onTurnStart",
183
- },
184
- {
185
- stage: "before_agent_start",
186
- extensionKey: "onBeforeAgentStart",
187
- sandboxHookName: "onBeforeAgentStart",
188
- },
189
- {
190
- stage: "tool_call_before",
191
- extensionKey: "onToolCall",
192
- sandboxHookName: "onToolCall",
193
- },
194
- {
195
- stage: "tool_call_after",
196
- extensionKey: "onToolResult",
197
- sandboxHookName: "onToolResult",
198
- },
199
- {
200
- stage: "turn_end",
201
- extensionKey: "onTurnEnd",
202
- sandboxHookName: "onTurnEnd",
203
- },
204
- {
205
- stage: "stop_error",
206
- extensionKey: "onAgentError",
207
- sandboxHookName: "onAgentError",
208
- },
209
- {
210
- stage: "iteration_end",
211
- extensionKey: "onIterationEnd",
212
- sandboxHookName: "onIterationEnd",
213
- },
214
- {
215
- stage: "run_end",
216
- extensionKey: "onRunEnd",
217
- sandboxHookName: "onRunEnd",
218
- },
219
- {
220
- stage: "session_shutdown",
221
- extensionKey: "onSessionShutdown",
222
- sandboxHookName: "onSessionShutdown",
223
- },
224
- {
225
- stage: "runtime_event",
226
- extensionKey: "onRuntimeEvent",
227
- sandboxHookName: "onRuntimeEvent",
228
- },
229
- { stage: "error", extensionKey: "onError", sandboxHookName: "onError" },
230
- ];
231
-
232
- function hasHookStage(extension: AgentExtension, stage: HookStage): boolean {
233
- return extension.manifest.hookStages?.includes(stage) === true;
234
- }
235
-
236
- function withTimeoutFallback(
237
- timeoutMs: number | undefined,
238
- fallback: number,
239
- ): number {
240
- return typeof timeoutMs === "number" && timeoutMs > 0 ? timeoutMs : fallback;
241
- }
242
-
243
- export async function loadSandboxedPlugins(
244
- options: PluginSandboxOptions,
245
- ): Promise<
246
- {
247
- extensions: AgentConfig["extensions"];
248
- shutdown: () => Promise<void>;
249
- } & PluginLoadDiagnostics
250
- > {
251
- const sandbox = new SubprocessSandbox({
252
- name: "plugin-sandbox",
253
- ...("file" in BOOTSTRAP
254
- ? { bootstrapFile: BOOTSTRAP.file }
255
- : { bootstrapScript: BOOTSTRAP.script }),
256
- onEvent: options.onEvent,
257
- });
258
- const importTimeoutMs = withTimeoutFallback(options.importTimeoutMs, 4000);
259
- const hookTimeoutMs = withTimeoutFallback(options.hookTimeoutMs, 3000);
260
- const contributionTimeoutMs = withTimeoutFallback(
261
- options.contributionTimeoutMs,
262
- 60_000,
263
- );
264
- const initArgs = {
265
- pluginPaths: options.pluginPaths,
266
- exportName: options.exportName,
267
- providerId: options.providerId,
268
- modelId: options.modelId,
269
- cwd: options.cwd,
270
- session: options.session,
271
- client: options.client,
272
- user: options.user,
273
- workspaceInfo: options.workspaceInfo,
274
- loggerEnabled: Boolean(options.logger),
275
- };
276
-
277
- // Guard against concurrent re-initialization when multiple tools/hooks
278
- // fail simultaneously with "Unknown sandbox plugin id:".
279
- let reinitPromise: Promise<void> | undefined;
280
- const reinitialize = (): Promise<void> => {
281
- reinitPromise ??= sandbox
282
- .call<void>("initialize", initArgs, { timeoutMs: importTimeoutMs })
283
- .finally(() => {
284
- reinitPromise = undefined;
285
- });
286
- return reinitPromise;
287
- };
288
-
289
- let initialized: SandboxedInitializeResult;
290
- try {
291
- initialized = await sandbox.call<SandboxedInitializeResult>(
292
- "initialize",
293
- initArgs,
294
- { timeoutMs: importTimeoutMs },
295
- );
296
- } catch (error) {
297
- await sandbox.shutdown().catch(() => {
298
- // Best-effort cleanup when sandbox initialization fails.
299
- });
300
- throw error;
301
- }
302
- const descriptors = initialized.plugins.map(normalizeDescriptor);
303
-
304
- const extensions: NonNullable<AgentConfig["extensions"]> = descriptors.map(
305
- (descriptor) => {
306
- const extension: AgentExtension = {
307
- name: descriptor.name,
308
- manifest: descriptor.manifest,
309
- setup: (api: AgentExtensionApi) => {
310
- registerTools(
311
- api,
312
- sandbox,
313
- descriptor,
314
- contributionTimeoutMs,
315
- reinitialize,
316
- );
317
- registerCommands(
318
- api,
319
- sandbox,
320
- descriptor,
321
- contributionTimeoutMs,
322
- reinitialize,
323
- );
324
- registerMessageBuilders(
325
- api,
326
- sandbox,
327
- descriptor,
328
- contributionTimeoutMs,
329
- reinitialize,
330
- );
331
- registerSimpleContributions(api, descriptor);
332
- },
333
- };
334
-
335
- bindHooks(
336
- extension,
337
- sandbox,
338
- descriptor.pluginId,
339
- hookTimeoutMs,
340
- reinitialize,
341
- );
342
-
343
- return extension;
344
- },
345
- );
346
-
347
- return {
348
- extensions,
349
- failures: initialized.failures,
350
- shutdown: async () => {
351
- await sandbox.shutdown();
352
- },
353
- warnings: initialized.warnings,
354
- };
355
- }
356
-
357
- // ---------------------------------------------------------------------------
358
- // Contribution registration helpers
359
- // ---------------------------------------------------------------------------
360
-
361
- function registerTools(
362
- api: AgentExtensionApi,
363
- sandbox: SubprocessSandbox,
364
- descriptor: SandboxedPluginDescriptor,
365
- timeoutMs: number,
366
- reinitialize: () => Promise<void>,
367
- ): void {
368
- for (const td of descriptor.contributions?.tools ?? []) {
369
- const tool: Tool = {
370
- name: td.name,
371
- description: td.description ?? "",
372
- inputSchema: (td.inputSchema ?? {
373
- type: "object",
374
- properties: {},
375
- }) as Tool["inputSchema"],
376
- timeoutMs: td.timeoutMs,
377
- retryable: td.retryable,
378
- execute: async (input: unknown, context: unknown) => {
379
- try {
380
- return await sandbox.call(
381
- "executeTool",
382
- {
383
- pluginId: descriptor.pluginId,
384
- contributionId: td.id,
385
- input,
386
- context,
387
- },
388
- { timeoutMs },
389
- );
390
- } catch (error) {
391
- if (!isUnknownPluginIdError(error)) {
392
- throw error;
393
- }
394
- await reinitialize();
395
- return await sandbox.call(
396
- "executeTool",
397
- {
398
- pluginId: descriptor.pluginId,
399
- contributionId: td.id,
400
- input,
401
- context,
402
- },
403
- { timeoutMs },
404
- );
405
- }
406
- },
407
- };
408
- api.registerTool(tool);
409
- }
410
- }
411
-
412
- function registerCommands(
413
- api: AgentExtensionApi,
414
- sandbox: SubprocessSandbox,
415
- descriptor: SandboxedPluginDescriptor,
416
- timeoutMs: number,
417
- reinitialize: () => Promise<void>,
418
- ): void {
419
- for (const cd of descriptor.contributions?.commands ?? []) {
420
- api.registerCommand({
421
- name: cd.name,
422
- description: cd.description,
423
- handler: async (input: string) => {
424
- try {
425
- return await sandbox.call<string>(
426
- "executeCommand",
427
- {
428
- pluginId: descriptor.pluginId,
429
- contributionId: cd.id,
430
- input,
431
- },
432
- { timeoutMs },
433
- );
434
- } catch (error) {
435
- if (!isUnknownPluginIdError(error)) {
436
- throw error;
437
- }
438
- await reinitialize();
439
- return await sandbox.call<string>(
440
- "executeCommand",
441
- {
442
- pluginId: descriptor.pluginId,
443
- contributionId: cd.id,
444
- input,
445
- },
446
- { timeoutMs },
447
- );
448
- }
449
- },
450
- });
451
- }
452
- }
453
-
454
- function registerSimpleContributions(
455
- api: AgentExtensionApi,
456
- descriptor: SandboxedPluginDescriptor,
457
- ): void {
458
- for (const pd of descriptor.contributions?.providers ?? []) {
459
- api.registerProvider({
460
- name: pd.name,
461
- description: pd.description,
462
- metadata: pd.metadata,
463
- });
464
- }
465
-
466
- for (const eventType of descriptor.contributions?.automationEventTypes ??
467
- []) {
468
- api.registerAutomationEventType({
469
- eventType: eventType.eventType,
470
- source: eventType.source,
471
- description: eventType.description,
472
- attributesSchema: eventType.attributesSchema,
473
- payloadSchema: eventType.payloadSchema,
474
- examples: eventType.examples,
475
- metadata: eventType.metadata,
476
- });
477
- }
478
- }
479
-
480
- function registerMessageBuilders(
481
- api: AgentExtensionApi,
482
- sandbox: SubprocessSandbox,
483
- descriptor: SandboxedPluginDescriptor,
484
- timeoutMs: number,
485
- reinitialize: () => Promise<void>,
486
- ): void {
487
- for (const bd of descriptor.contributions?.messageBuilders ?? []) {
488
- api.registerMessageBuilder({
489
- name: bd.name,
490
- async build(messages) {
491
- try {
492
- const result = await sandbox.call<unknown[]>(
493
- "buildMessages",
494
- {
495
- pluginId: descriptor.pluginId,
496
- contributionId: bd.id,
497
- messages,
498
- },
499
- { timeoutMs },
500
- );
501
- return isMessageArray(result) ? result : messages;
502
- } catch (error) {
503
- if (!isUnknownPluginIdError(error)) {
504
- throw error;
505
- }
506
- await reinitialize();
507
- const result = await sandbox.call<unknown[]>(
508
- "buildMessages",
509
- {
510
- pluginId: descriptor.pluginId,
511
- contributionId: bd.id,
512
- messages,
513
- },
514
- { timeoutMs },
515
- );
516
- return isMessageArray(result) ? result : messages;
517
- }
518
- },
519
- });
520
- }
521
- }
522
-
523
- function isMessageArray(value: unknown): value is Message[] {
524
- return (
525
- Array.isArray(value) &&
526
- value.every(
527
- (entry) =>
528
- typeof entry === "object" &&
529
- entry !== null &&
530
- "role" in entry &&
531
- "content" in entry,
532
- )
533
- );
534
- }
535
-
536
- function makeHookHandler(
537
- sandbox: SubprocessSandbox,
538
- pluginId: string,
539
- hookName: string,
540
- timeoutMs: number,
541
- reinitialize: () => Promise<void>,
542
- ): (payload: unknown) => Promise<unknown> {
543
- return async (payload: unknown) => {
544
- try {
545
- return await sandbox.call(
546
- "invokeHook",
547
- { pluginId, hookName, payload },
548
- { timeoutMs },
549
- );
550
- } catch (error) {
551
- if (!isUnknownPluginIdError(error)) {
552
- throw error;
553
- }
554
- await reinitialize();
555
- return await sandbox.call(
556
- "invokeHook",
557
- { pluginId, hookName, payload },
558
- { timeoutMs },
559
- );
560
- }
561
- };
562
- }
563
-
564
- function bindHooks(
565
- extension: AgentExtension,
566
- sandbox: SubprocessSandbox,
567
- pluginId: string,
568
- hookTimeoutMs: number,
569
- reinitialize: () => Promise<void>,
570
- ): void {
571
- for (const { stage, extensionKey, sandboxHookName } of HOOK_BINDINGS) {
572
- if (hasHookStage(extension, stage)) {
573
- const handler = makeHookHandler(
574
- sandbox,
575
- pluginId,
576
- sandboxHookName,
577
- hookTimeoutMs,
578
- reinitialize,
579
- );
580
- // Each hook property on AgentExtension accepts (payload: unknown) => Promise<unknown>.
581
- // TypeScript cannot narrow a union of optional callback keys via computed access,
582
- // so we use Object.assign to set the property safely.
583
- Object.assign(extension, { [extensionKey]: handler });
584
- }
585
- }
586
- }
@@ -1,32 +0,0 @@
1
- import type { PluginManifest } from "@clinebot/shared";
2
-
3
- export interface PluginTargeting {
4
- providerId?: string;
5
- modelId?: string;
6
- }
7
-
8
- export function matchesPluginManifestTargeting(
9
- manifest: PluginManifest | undefined,
10
- targeting: PluginTargeting | undefined,
11
- ): boolean {
12
- if (!manifest) {
13
- return true;
14
- }
15
-
16
- if (manifest.providerIds?.length) {
17
- if (
18
- !targeting?.providerId ||
19
- !manifest.providerIds.includes(targeting.providerId)
20
- ) {
21
- return false;
22
- }
23
- }
24
-
25
- if (manifest.modelIds?.length) {
26
- if (!targeting?.modelId || !manifest.modelIds.includes(targeting.modelId)) {
27
- return false;
28
- }
29
- }
30
-
31
- return true;
32
- }
@@ -1,37 +0,0 @@
1
- /**
2
- * Constants for Default Tools
3
- *
4
- * Tool name constants and utility arrays.
5
- */
6
-
7
- import type { DefaultToolName } from "./types";
8
-
9
- /**
10
- * Constants for default tool names
11
- */
12
- export const DefaultToolNames = {
13
- READ_FILES: "read_files",
14
- SEARCH_CODEBASE: "search_codebase",
15
- RUN_COMMANDS: "run_commands",
16
- FETCH_WEB_CONTENT: "fetch_web_content",
17
- APPLY_PATCH: "apply_patch",
18
- EDITOR: "editor",
19
- SKILLS: "skills",
20
- ASK: "ask_question",
21
- SUBMIT_AND_EXIT: "submit_and_exit",
22
- } as const;
23
-
24
- /**
25
- * Array of all default tool names
26
- */
27
- export const ALL_DEFAULT_TOOL_NAMES: DefaultToolName[] = [
28
- DefaultToolNames.READ_FILES,
29
- DefaultToolNames.SEARCH_CODEBASE,
30
- DefaultToolNames.RUN_COMMANDS,
31
- DefaultToolNames.FETCH_WEB_CONTENT,
32
- DefaultToolNames.APPLY_PATCH,
33
- DefaultToolNames.EDITOR,
34
- DefaultToolNames.SKILLS,
35
- DefaultToolNames.ASK,
36
- DefaultToolNames.SUBMIT_AND_EXIT,
37
- ];