@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,415 +0,0 @@
1
- import type {
2
- BasicLogger,
3
- ITelemetryService,
4
- OpenTelemetryClientConfig,
5
- TelemetryMetadata,
6
- } from "@clinebot/shared";
7
- import { metrics, type Tracer, trace } from "@opentelemetry/api";
8
- import { logs } from "@opentelemetry/api-logs";
9
- import { OTLPLogExporter as OTLPLogExporterHttp } from "@opentelemetry/exporter-logs-otlp-http";
10
- import { OTLPMetricExporter as OTLPMetricExporterHttp } from "@opentelemetry/exporter-metrics-otlp-http";
11
- import { OTLPTraceExporter } from "@opentelemetry/exporter-trace-otlp-http";
12
- import { resourceFromAttributes } from "@opentelemetry/resources";
13
- import {
14
- BatchLogRecordProcessor,
15
- ConsoleLogRecordExporter,
16
- LoggerProvider,
17
- type LogRecordExporter,
18
- } from "@opentelemetry/sdk-logs";
19
- import {
20
- ConsoleMetricExporter,
21
- MeterProvider,
22
- type MetricReader,
23
- PeriodicExportingMetricReader,
24
- } from "@opentelemetry/sdk-metrics";
25
- import {
26
- BatchSpanProcessor,
27
- ConsoleSpanExporter,
28
- SimpleSpanProcessor,
29
- type SpanProcessor,
30
- } from "@opentelemetry/sdk-trace-base";
31
- import { NodeTracerProvider } from "@opentelemetry/sdk-trace-node";
32
- import {
33
- ATTR_SERVICE_NAME,
34
- ATTR_SERVICE_VERSION,
35
- } from "@opentelemetry/semantic-conventions";
36
- import { resolveCoreDistinctId } from "./distinct-id";
37
- import {
38
- OpenTelemetryAdapter,
39
- type OpenTelemetryAdapterOptions,
40
- } from "./OpenTelemetryAdapter";
41
- import { TelemetryService } from "./TelemetryService";
42
-
43
- type OpenTelemetryExporterKind = "console" | "otlp";
44
- type OpenTelemetryProtocol = "http/json";
45
-
46
- export interface OpenTelemetryProviderOptions
47
- extends Omit<
48
- OpenTelemetryClientConfig,
49
- "enabled" | "logsExporter" | "metricsExporter" | "tracesExporter"
50
- > {
51
- serviceName?: string;
52
- serviceVersion?: string;
53
- enabled?: boolean;
54
- logsExporter?: string | OpenTelemetryExporterKind[];
55
- metricsExporter?: string | OpenTelemetryExporterKind[];
56
- tracesExporter?: string | OpenTelemetryExporterKind[];
57
- metricExportIntervalMs?: number;
58
- logMaxQueueSize?: number;
59
- logBatchSize?: number;
60
- logBatchTimeoutMs?: number;
61
- }
62
-
63
- export interface CreateOpenTelemetryTelemetryServiceOptions
64
- extends OpenTelemetryProviderOptions,
65
- Pick<
66
- OpenTelemetryAdapterOptions,
67
- "name" | "distinctId" | "commonProperties"
68
- > {
69
- metadata: TelemetryMetadata;
70
- logger?: BasicLogger;
71
- }
72
-
73
- export class OpenTelemetryProvider {
74
- readonly meterProvider: MeterProvider | null;
75
- readonly loggerProvider: LoggerProvider | null;
76
- readonly tracerProvider: NodeTracerProvider | null;
77
- private readonly options: OpenTelemetryProviderOptions;
78
-
79
- constructor(options: OpenTelemetryProviderOptions = {}) {
80
- this.options = options;
81
- const resource = resourceFromAttributes({
82
- [ATTR_SERVICE_NAME]: options.serviceName ?? "cline",
83
- ...(options.serviceVersion
84
- ? { [ATTR_SERVICE_VERSION]: options.serviceVersion }
85
- : {}),
86
- });
87
-
88
- this.meterProvider = this.createMeterProvider(resource);
89
- this.loggerProvider = this.createLoggerProvider(resource);
90
- this.tracerProvider = this.createTracerProvider(resource);
91
-
92
- if (this.meterProvider) {
93
- metrics.setGlobalMeterProvider(this.meterProvider);
94
- }
95
- if (this.loggerProvider) {
96
- logs.setGlobalLoggerProvider(this.loggerProvider);
97
- }
98
- if (this.tracerProvider) {
99
- this.tracerProvider.register();
100
- }
101
- }
102
-
103
- /**
104
- * Returns a tracer for manual spans. Requires {@link OpenTelemetryProviderOptions.tracesExporter}
105
- * so that a {@link NodeTracerProvider} is registered.
106
- */
107
- getTracer(name = "cline", version?: string): Tracer {
108
- return trace.getTracer(name, version ?? this.options.serviceVersion);
109
- }
110
-
111
- createAdapter(
112
- options: Omit<
113
- OpenTelemetryAdapterOptions,
114
- "meterProvider" | "loggerProvider"
115
- >,
116
- ): OpenTelemetryAdapter {
117
- return new OpenTelemetryAdapter({
118
- ...options,
119
- meterProvider: this.meterProvider,
120
- loggerProvider: this.loggerProvider,
121
- });
122
- }
123
-
124
- createTelemetryService(
125
- options: Omit<
126
- CreateOpenTelemetryTelemetryServiceOptions,
127
- keyof OpenTelemetryProviderOptions
128
- >,
129
- ): ITelemetryService {
130
- const adapter = this.createAdapter({
131
- name: options.name,
132
- enabled: this.options.enabled,
133
- metadata: options.metadata,
134
- });
135
- return new TelemetryService({
136
- ...options,
137
- adapters: [adapter],
138
- distinctId: resolveCoreDistinctId(options.distinctId),
139
- });
140
- }
141
-
142
- async forceFlush(): Promise<void> {
143
- await Promise.all([
144
- this.meterProvider?.forceFlush?.(),
145
- this.loggerProvider?.forceFlush?.(),
146
- this.tracerProvider?.forceFlush?.(),
147
- ]);
148
- }
149
-
150
- async dispose(): Promise<void> {
151
- await Promise.all([
152
- this.meterProvider?.shutdown?.(),
153
- this.loggerProvider?.shutdown?.(),
154
- this.tracerProvider?.shutdown?.(),
155
- ]);
156
- }
157
-
158
- private createMeterProvider(
159
- resource: ReturnType<typeof resourceFromAttributes>,
160
- ): MeterProvider | null {
161
- const exporters = normalizeExporters(this.options.metricsExporter);
162
- if (exporters.length === 0) {
163
- return null;
164
- }
165
-
166
- const interval = Math.max(
167
- 1_000,
168
- this.options.metricExportIntervalMs ??
169
- this.options.metricExportInterval ??
170
- 60_000,
171
- );
172
- const timeout = Math.min(30_000, Math.floor(interval * 0.8));
173
- const readers = exporters
174
- .map((exporter) =>
175
- createMetricReader(exporter, {
176
- endpoint: this.options.otlpEndpoint,
177
- headers: this.options.otlpHeaders,
178
- insecure: this.options.otlpInsecure ?? false,
179
- protocol: "http/json",
180
- interval,
181
- timeout,
182
- }),
183
- )
184
- .filter((reader): reader is MetricReader => reader !== null);
185
-
186
- if (readers.length === 0) {
187
- return null;
188
- }
189
-
190
- return new MeterProvider({
191
- resource,
192
- readers,
193
- });
194
- }
195
-
196
- private createTracerProvider(
197
- resource: ReturnType<typeof resourceFromAttributes>,
198
- ): NodeTracerProvider | null {
199
- const exporters = normalizeExporters(this.options.tracesExporter);
200
- if (exporters.length === 0) {
201
- return null;
202
- }
203
-
204
- const traceEndpoint =
205
- this.options.otlpTracesEndpoint ?? this.options.otlpEndpoint;
206
- const traceHeaders =
207
- this.options.otlpTracesHeaders ?? this.options.otlpHeaders;
208
-
209
- const processors: SpanProcessor[] = [];
210
- for (const exporter of exporters) {
211
- const processor = createSpanProcessor(exporter, {
212
- endpoint: traceEndpoint,
213
- headers: traceHeaders,
214
- insecure: this.options.otlpInsecure ?? false,
215
- protocol: "http/json",
216
- });
217
- if (processor) {
218
- processors.push(processor);
219
- }
220
- }
221
- if (processors.length === 0) {
222
- return null;
223
- }
224
-
225
- return new NodeTracerProvider({ resource, spanProcessors: processors });
226
- }
227
-
228
- private createLoggerProvider(
229
- resource: ReturnType<typeof resourceFromAttributes>,
230
- ): LoggerProvider | null {
231
- const exporters = normalizeExporters(this.options.logsExporter);
232
- if (exporters.length === 0) {
233
- return null;
234
- }
235
-
236
- const processors = exporters
237
- .map((exporter) => {
238
- const logExporter = createLogExporter(exporter, {
239
- endpoint: this.options.otlpEndpoint,
240
- headers: this.options.otlpHeaders,
241
- insecure: this.options.otlpInsecure ?? false,
242
- protocol: "http/json",
243
- });
244
- if (!logExporter) {
245
- return null;
246
- }
247
- return new BatchLogRecordProcessor(logExporter, {
248
- maxQueueSize: this.options.logMaxQueueSize ?? 2048,
249
- maxExportBatchSize: this.options.logBatchSize ?? 512,
250
- scheduledDelayMillis:
251
- this.options.logBatchTimeoutMs ??
252
- this.options.logBatchTimeout ??
253
- 5000,
254
- });
255
- })
256
- .filter((p): p is BatchLogRecordProcessor => p !== null);
257
- if (processors.length === 0) {
258
- return null;
259
- }
260
- return new LoggerProvider({ resource, processors });
261
- }
262
- }
263
-
264
- export function createOpenTelemetryTelemetryService(
265
- options: CreateOpenTelemetryTelemetryServiceOptions,
266
- ): { provider: OpenTelemetryProvider; telemetry: ITelemetryService } {
267
- const provider = new OpenTelemetryProvider(options);
268
- const telemetry = provider.createTelemetryService(options);
269
- telemetry.captureRequired("telemetry.provider_created", {
270
- provider: "opentelemetry",
271
- enabled: options.enabled ?? true,
272
- logsExporter: Array.isArray(options.logsExporter)
273
- ? options.logsExporter.join(",")
274
- : options.logsExporter,
275
- metricsExporter: Array.isArray(options.metricsExporter)
276
- ? options.metricsExporter.join(",")
277
- : options.metricsExporter,
278
- tracesExporter: Array.isArray(options.tracesExporter)
279
- ? options.tracesExporter.join(",")
280
- : options.tracesExporter,
281
- otlpProtocol: options.otlpProtocol,
282
- hasOtlpEndpoint: Boolean(options.otlpEndpoint),
283
- serviceName: options.serviceName,
284
- serviceVersion: options.serviceVersion,
285
- });
286
- return {
287
- provider,
288
- telemetry,
289
- };
290
- }
291
-
292
- export function createConfiguredTelemetryService(
293
- options: CreateOpenTelemetryTelemetryServiceOptions,
294
- ): {
295
- provider?: OpenTelemetryProvider;
296
- telemetry: ITelemetryService;
297
- } {
298
- if (options.enabled !== true) {
299
- return {
300
- telemetry: new TelemetryService({
301
- ...options,
302
- distinctId: resolveCoreDistinctId(options.distinctId),
303
- }),
304
- };
305
- }
306
-
307
- return createOpenTelemetryTelemetryService(options);
308
- }
309
-
310
- function normalizeExporters(
311
- exporters: OpenTelemetryProviderOptions["logsExporter"],
312
- ): OpenTelemetryExporterKind[] {
313
- if (!exporters) {
314
- return [];
315
- }
316
- const values = Array.isArray(exporters) ? exporters : exporters.split(",");
317
- return values
318
- .map((value) => value.trim())
319
- .filter(
320
- (value): value is OpenTelemetryExporterKind =>
321
- value === "console" || value === "otlp",
322
- );
323
- }
324
-
325
- function createLogExporter(
326
- exporter: OpenTelemetryExporterKind,
327
- options: {
328
- endpoint?: string;
329
- headers?: Record<string, string>;
330
- insecure: boolean;
331
- protocol: OpenTelemetryProtocol;
332
- },
333
- ): LogRecordExporter | null {
334
- if (exporter === "console") {
335
- return new ConsoleLogRecordExporter();
336
- }
337
- if (!options.endpoint) {
338
- return null;
339
- }
340
-
341
- const endpoint = ensurePathSuffix(options.endpoint, "/v1/logs");
342
- return new OTLPLogExporterHttp({
343
- url: endpoint,
344
- headers: options.headers,
345
- });
346
- }
347
-
348
- function createSpanProcessor(
349
- exporter: OpenTelemetryExporterKind,
350
- options: {
351
- endpoint?: string;
352
- headers?: Record<string, string>;
353
- insecure: boolean;
354
- protocol: OpenTelemetryProtocol;
355
- },
356
- ): SpanProcessor | null {
357
- if (exporter === "console") {
358
- return new SimpleSpanProcessor(new ConsoleSpanExporter());
359
- }
360
- if (!options.endpoint) {
361
- return null;
362
- }
363
-
364
- const endpoint = ensurePathSuffix(options.endpoint, "/v1/traces");
365
- return new BatchSpanProcessor(
366
- new OTLPTraceExporter({
367
- url: endpoint,
368
- headers: options.headers,
369
- }),
370
- );
371
- }
372
-
373
- function createMetricReader(
374
- exporter: OpenTelemetryExporterKind,
375
- options: {
376
- endpoint?: string;
377
- headers?: Record<string, string>;
378
- insecure: boolean;
379
- protocol: OpenTelemetryProtocol;
380
- interval: number;
381
- timeout: number;
382
- },
383
- ): MetricReader | null {
384
- if (exporter === "console") {
385
- return new PeriodicExportingMetricReader({
386
- exporter: new ConsoleMetricExporter(),
387
- exportIntervalMillis: options.interval,
388
- exportTimeoutMillis: options.timeout,
389
- });
390
- }
391
- if (!options.endpoint) {
392
- return null;
393
- }
394
-
395
- const endpoint = ensurePathSuffix(options.endpoint, "/v1/metrics");
396
- return new PeriodicExportingMetricReader({
397
- exporter: new OTLPMetricExporterHttp({
398
- url: endpoint,
399
- headers: options.headers,
400
- }),
401
- exportIntervalMillis: options.interval,
402
- exportTimeoutMillis: options.timeout,
403
- });
404
- }
405
-
406
- function ensurePathSuffix(endpoint: string, suffix: string): string {
407
- const url = new URL(endpoint);
408
- const normalized = url.pathname.endsWith("/")
409
- ? url.pathname.slice(0, -1)
410
- : url.pathname;
411
- url.pathname = normalized.endsWith(suffix)
412
- ? normalized
413
- : `${normalized}${suffix}`;
414
- return url.toString();
415
- }
@@ -1,121 +0,0 @@
1
- import type { BasicLogger } from "@clinebot/shared";
2
- import type {
3
- ITelemetryAdapter,
4
- TelemetryProperties,
5
- } from "./ITelemetryAdapter";
6
-
7
- /**
8
- * {@link ITelemetryAdapter} implementation that forwards telemetry to a {@link BasicLogger}.
9
- *
10
- * This is intentionally named *Sink* (not "adapter") to distinguish it from host logging bridges
11
- * such as the CLI Pino bundle: it consumes telemetry events and writes them to the injected logger.
12
- */
13
- export interface TelemetryLoggerSinkOptions {
14
- logger?: BasicLogger;
15
- name?: string;
16
- enabled?: boolean | (() => boolean);
17
- }
18
-
19
- export class TelemetryLoggerSink implements ITelemetryAdapter {
20
- readonly name: string;
21
-
22
- private readonly logger?: BasicLogger;
23
- private readonly enabled: boolean | (() => boolean);
24
-
25
- constructor(options: TelemetryLoggerSinkOptions = {}) {
26
- this.name = options.name ?? "TelemetryLoggerSink";
27
- this.logger = options.logger;
28
- this.enabled = options.enabled ?? true;
29
- }
30
-
31
- emit(event: string, properties?: TelemetryProperties): void {
32
- if (!this.isEnabled()) {
33
- return;
34
- }
35
- this.logger?.log("telemetry.event", {
36
- telemetrySink: this.name,
37
- event,
38
- properties,
39
- });
40
- }
41
-
42
- emitRequired(event: string, properties?: TelemetryProperties): void {
43
- this.logger?.log("telemetry.required_event", {
44
- telemetrySink: this.name,
45
- severity: "warn",
46
- event,
47
- properties,
48
- });
49
- }
50
-
51
- recordCounter(
52
- name: string,
53
- value: number,
54
- attributes?: TelemetryProperties,
55
- description?: string,
56
- required?: boolean,
57
- ): void {
58
- if (!required && !this.isEnabled()) {
59
- return;
60
- }
61
- this.logger?.debug("telemetry.metric", {
62
- telemetrySink: this.name,
63
- instrument: "counter",
64
- name,
65
- value,
66
- attributes,
67
- description,
68
- required: required === true,
69
- });
70
- }
71
-
72
- recordHistogram(
73
- name: string,
74
- value: number,
75
- attributes?: TelemetryProperties,
76
- description?: string,
77
- required?: boolean,
78
- ): void {
79
- if (!required && !this.isEnabled()) {
80
- return;
81
- }
82
- this.logger?.debug("telemetry.metric", {
83
- telemetrySink: this.name,
84
- instrument: "histogram",
85
- name,
86
- value,
87
- attributes,
88
- description,
89
- required: required === true,
90
- });
91
- }
92
-
93
- recordGauge(
94
- name: string,
95
- value: number | null,
96
- attributes?: TelemetryProperties,
97
- description?: string,
98
- required?: boolean,
99
- ): void {
100
- if (!required && !this.isEnabled()) {
101
- return;
102
- }
103
- this.logger?.debug("telemetry.metric", {
104
- telemetrySink: this.name,
105
- instrument: "gauge",
106
- name,
107
- value,
108
- attributes,
109
- description,
110
- required: required === true,
111
- });
112
- }
113
-
114
- isEnabled(): boolean {
115
- return typeof this.enabled === "function" ? this.enabled() : this.enabled;
116
- }
117
-
118
- async flush(): Promise<void> {}
119
-
120
- async dispose(): Promise<void> {}
121
- }
@@ -1,139 +0,0 @@
1
- import type {
2
- BasicLogger,
3
- ITelemetryService,
4
- TelemetryMetadata,
5
- TelemetryProperties,
6
- } from "@clinebot/shared";
7
- import type { ITelemetryAdapter } from "./ITelemetryAdapter";
8
- import { TelemetryLoggerSink } from "./TelemetryLoggerSink";
9
-
10
- export interface TelemetryServiceOptions {
11
- adapters?: ITelemetryAdapter[];
12
- metadata?: Partial<TelemetryMetadata>;
13
- distinctId?: string;
14
- commonProperties?: TelemetryProperties;
15
- logger?: BasicLogger;
16
- }
17
-
18
- export class TelemetryService implements ITelemetryService {
19
- private adapters: ITelemetryAdapter[];
20
- private metadata: Partial<TelemetryMetadata>;
21
- private distinctId?: string;
22
- private commonProperties: TelemetryProperties;
23
-
24
- constructor(options: TelemetryServiceOptions = {}) {
25
- this.adapters = [...(options.adapters ?? [])];
26
- if (options.logger) {
27
- this.adapters.push(new TelemetryLoggerSink({ logger: options.logger }));
28
- }
29
- this.metadata = { ...(options.metadata ?? {}) };
30
- this.distinctId = options.distinctId;
31
- this.commonProperties = { ...(options.commonProperties ?? {}) };
32
- }
33
-
34
- addAdapter(adapter: ITelemetryAdapter): void {
35
- this.adapters.push(adapter);
36
- }
37
-
38
- setDistinctId(distinctId?: string): void {
39
- this.distinctId = distinctId;
40
- }
41
-
42
- setMetadata(metadata: Partial<TelemetryMetadata>): void {
43
- this.metadata = { ...metadata };
44
- }
45
-
46
- updateMetadata(metadata: Partial<TelemetryMetadata>): void {
47
- this.metadata = {
48
- ...this.metadata,
49
- ...metadata,
50
- };
51
- }
52
-
53
- setCommonProperties(properties: TelemetryProperties): void {
54
- this.commonProperties = { ...properties };
55
- }
56
-
57
- updateCommonProperties(properties: TelemetryProperties): void {
58
- this.commonProperties = {
59
- ...this.commonProperties,
60
- ...properties,
61
- };
62
- }
63
-
64
- isEnabled(): boolean {
65
- return this.adapters.some((adapter) => adapter.isEnabled());
66
- }
67
-
68
- capture(input: { event: string; properties?: TelemetryProperties }): void {
69
- const properties = this.buildAttributes(input.properties);
70
- for (const adapter of this.adapters) {
71
- adapter.emit(input.event, properties);
72
- }
73
- }
74
-
75
- captureRequired(event: string, properties?: TelemetryProperties): void {
76
- const merged = this.buildAttributes(properties);
77
- for (const adapter of this.adapters) {
78
- adapter.emitRequired(event, merged);
79
- }
80
- }
81
-
82
- recordCounter(
83
- name: string,
84
- value: number,
85
- attributes?: TelemetryProperties,
86
- description?: string,
87
- required = false,
88
- ): void {
89
- const merged = this.buildAttributes(attributes);
90
- for (const adapter of this.adapters) {
91
- adapter.recordCounter(name, value, merged, description, required);
92
- }
93
- }
94
-
95
- recordHistogram(
96
- name: string,
97
- value: number,
98
- attributes?: TelemetryProperties,
99
- description?: string,
100
- required = false,
101
- ): void {
102
- const merged = this.buildAttributes(attributes);
103
- for (const adapter of this.adapters) {
104
- adapter.recordHistogram(name, value, merged, description, required);
105
- }
106
- }
107
-
108
- recordGauge(
109
- name: string,
110
- value: number | null,
111
- attributes?: TelemetryProperties,
112
- description?: string,
113
- required = false,
114
- ): void {
115
- const merged = this.buildAttributes(attributes);
116
- for (const adapter of this.adapters) {
117
- adapter.recordGauge(name, value, merged, description, required);
118
- }
119
- }
120
-
121
- async flush(): Promise<void> {
122
- await Promise.all(this.adapters.map((adapter) => adapter.flush()));
123
- }
124
-
125
- async dispose(): Promise<void> {
126
- await Promise.all(this.adapters.map((adapter) => adapter.dispose()));
127
- }
128
-
129
- private buildAttributes(
130
- properties?: TelemetryProperties,
131
- ): TelemetryProperties {
132
- return {
133
- ...this.commonProperties,
134
- ...properties,
135
- ...this.metadata,
136
- ...(this.distinctId ? { distinct_id: this.distinctId } : {}),
137
- };
138
- }
139
- }