@clinebot/core 0.0.34 → 0.0.36
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -10
- package/dist/ClineCore.d.ts +96 -63
- package/dist/ClineCore.d.ts.map +1 -1
- package/dist/account/index.d.ts +1 -1
- package/dist/account/index.d.ts.map +1 -1
- package/dist/account/rpc.d.ts +6 -6
- package/dist/account/rpc.d.ts.map +1 -1
- package/dist/cron/index.d.ts +6 -0
- package/dist/cron/index.d.ts.map +1 -0
- package/dist/cron/resource-limiter.d.ts +9 -0
- package/dist/cron/resource-limiter.d.ts.map +1 -0
- package/dist/cron/schedule-command-service.d.ts +10 -0
- package/dist/cron/schedule-command-service.d.ts.map +1 -0
- package/dist/cron/schedule-service.d.ts +100 -0
- package/dist/cron/schedule-service.d.ts.map +1 -0
- package/dist/cron/scheduler.d.ts +66 -0
- package/dist/cron/scheduler.d.ts.map +1 -0
- package/dist/cron/sqlite-schedule-store.d.ts +52 -0
- package/dist/cron/sqlite-schedule-store.d.ts.map +1 -0
- package/dist/extensions/config/agent-config-loader.d.ts +6 -5
- package/dist/extensions/config/agent-config-loader.d.ts.map +1 -1
- package/dist/extensions/config/agent-config-parser.d.ts +1 -1
- package/dist/extensions/config/agent-config-parser.d.ts.map +1 -1
- package/dist/extensions/config/hooks-config-loader.d.ts +2 -2
- package/dist/extensions/config/hooks-config-loader.d.ts.map +1 -1
- package/dist/extensions/config/index.d.ts +3 -3
- package/dist/extensions/config/index.d.ts.map +1 -1
- package/dist/extensions/config/runtime-commands.d.ts +1 -0
- package/dist/extensions/config/runtime-commands.d.ts.map +1 -1
- package/dist/extensions/config/user-instruction-config-loader.d.ts +3 -2
- package/dist/extensions/config/user-instruction-config-loader.d.ts.map +1 -1
- package/dist/extensions/context/agentic-compaction.d.ts +2 -2
- package/dist/extensions/context/agentic-compaction.d.ts.map +1 -1
- package/dist/extensions/context/compaction-shared.d.ts +5 -4
- package/dist/extensions/context/compaction-shared.d.ts.map +1 -1
- package/dist/extensions/context/compaction.d.ts.map +1 -1
- package/dist/extensions/plugin/plugin-config-loader.d.ts +9 -2
- package/dist/extensions/plugin/plugin-config-loader.d.ts.map +1 -1
- package/dist/extensions/plugin/plugin-loader.d.ts +5 -3
- package/dist/extensions/plugin/plugin-loader.d.ts.map +1 -1
- package/dist/extensions/plugin/plugin-module-import.d.ts.map +1 -1
- package/dist/extensions/plugin/plugin-sandbox.d.ts +15 -2
- package/dist/extensions/plugin/plugin-sandbox.d.ts.map +1 -1
- package/dist/extensions/plugin/plugin-targeting.d.ts +7 -0
- package/dist/extensions/plugin/plugin-targeting.d.ts.map +1 -0
- package/dist/extensions/plugin-sandbox-bootstrap.js +253 -253
- package/dist/extensions/tools/constants.d.ts.map +1 -0
- package/dist/{tools → extensions/tools}/definitions.d.ts +1 -1
- package/dist/extensions/tools/definitions.d.ts.map +1 -0
- package/dist/extensions/tools/executors/apply-patch-parser.d.ts.map +1 -0
- package/dist/{tools → extensions/tools}/executors/apply-patch.d.ts +3 -1
- package/dist/extensions/tools/executors/apply-patch.d.ts.map +1 -0
- package/dist/extensions/tools/executors/bash.d.ts.map +1 -0
- package/dist/extensions/tools/executors/editor.d.ts.map +1 -0
- package/dist/extensions/tools/executors/file-read.d.ts.map +1 -0
- package/dist/extensions/tools/executors/index.d.ts.map +1 -0
- package/dist/{tools → extensions/tools}/executors/search.d.ts +1 -1
- package/dist/extensions/tools/executors/search.d.ts.map +1 -0
- package/dist/extensions/tools/executors/web-fetch.d.ts.map +1 -0
- package/dist/extensions/tools/helpers.d.ts.map +1 -0
- package/dist/{tools → extensions/tools}/index.d.ts +2 -0
- package/dist/extensions/tools/index.d.ts.map +1 -0
- package/dist/{tools → extensions/tools}/model-tool-routing.d.ts +1 -1
- package/dist/extensions/tools/model-tool-routing.d.ts.map +1 -0
- package/dist/{tools → extensions/tools}/presets.d.ts +26 -44
- package/dist/extensions/tools/presets.d.ts.map +1 -0
- package/dist/extensions/tools/runtime.d.ts +25 -0
- package/dist/extensions/tools/runtime.d.ts.map +1 -0
- package/dist/extensions/tools/schemas.d.ts.map +1 -0
- package/dist/extensions/tools/team/delegated-agent.d.ts.map +1 -0
- package/dist/extensions/tools/team/index.d.ts.map +1 -0
- package/dist/{team → extensions/tools/team}/multi-agent.d.ts +1 -3
- package/dist/extensions/tools/team/multi-agent.d.ts.map +1 -0
- package/dist/extensions/tools/team/projections.d.ts.map +1 -0
- package/dist/extensions/tools/team/runtime.d.ts.map +1 -0
- package/dist/{team → extensions/tools/team}/spawn-agent-tool.d.ts +0 -1
- package/dist/extensions/tools/team/spawn-agent-tool.d.ts.map +1 -0
- package/dist/extensions/tools/team/subagent-prompts.d.ts.map +1 -0
- package/dist/{team → extensions/tools/team}/team-tools.d.ts +1 -0
- package/dist/extensions/tools/team/team-tools.d.ts.map +1 -0
- package/dist/{tools → extensions/tools}/types.d.ts +4 -3
- package/dist/extensions/tools/types.d.ts.map +1 -0
- package/dist/{runtime → hooks}/checkpoint-hooks.d.ts +7 -0
- package/dist/hooks/checkpoint-hooks.d.ts.map +1 -0
- package/dist/{runtime → hooks}/hook-file-hooks.d.ts +4 -3
- package/dist/hooks/hook-file-hooks.d.ts.map +1 -0
- package/dist/hooks/index.d.ts +0 -1
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/subprocess.d.ts +10 -130
- package/dist/hooks/subprocess.d.ts.map +1 -1
- package/dist/hub/browser-websocket.d.ts +18 -0
- package/dist/hub/browser-websocket.d.ts.map +1 -0
- package/dist/hub/client.d.ts +45 -0
- package/dist/hub/client.d.ts.map +1 -0
- package/dist/hub/connect.d.ts +15 -0
- package/dist/hub/connect.d.ts.map +1 -0
- package/dist/hub/daemon-entry.d.ts +2 -0
- package/dist/hub/daemon-entry.d.ts.map +1 -0
- package/dist/hub/daemon-entry.js +1045 -0
- package/dist/hub/daemon.d.ts +5 -0
- package/dist/hub/daemon.d.ts.map +1 -0
- package/dist/hub/defaults.d.ts +13 -0
- package/dist/hub/defaults.d.ts.map +1 -0
- package/dist/hub/discovery.d.ts +29 -0
- package/dist/hub/discovery.d.ts.map +1 -0
- package/dist/hub/index.d.ts +15 -0
- package/dist/hub/index.d.ts.map +1 -0
- package/dist/hub/index.js +1044 -0
- package/dist/hub/native-transport.d.ts +17 -0
- package/dist/hub/native-transport.d.ts.map +1 -0
- package/dist/hub/runtime-handlers.d.ts +11 -0
- package/dist/hub/runtime-handlers.d.ts.map +1 -0
- package/dist/hub/server.d.ts +86 -0
- package/dist/hub/server.d.ts.map +1 -0
- package/dist/hub/session-client.d.ts +87 -0
- package/dist/hub/session-client.d.ts.map +1 -0
- package/dist/hub/start-shared-server.d.ts +19 -0
- package/dist/hub/start-shared-server.d.ts.map +1 -0
- package/dist/hub/transport.d.ts +8 -0
- package/dist/hub/transport.d.ts.map +1 -0
- package/dist/hub/ui-client.d.ts +44 -0
- package/dist/hub/ui-client.d.ts.map +1 -0
- package/dist/hub/workspace.d.ts +4 -0
- package/dist/hub/workspace.d.ts.map +1 -0
- package/dist/index.d.ts +52 -39
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +557 -533
- package/dist/llms/configured-provider-registry.d.ts +28 -0
- package/dist/llms/configured-provider-registry.d.ts.map +1 -0
- package/dist/llms/provider-defaults.d.ts +27 -0
- package/dist/llms/provider-defaults.d.ts.map +1 -0
- package/dist/llms/provider-settings.d.ts +202 -0
- package/dist/llms/provider-settings.d.ts.map +1 -0
- package/dist/llms/runtime-config.d.ts +4 -0
- package/dist/llms/runtime-config.d.ts.map +1 -0
- package/dist/llms/runtime-registry.d.ts +20 -0
- package/dist/llms/runtime-registry.d.ts.map +1 -0
- package/dist/llms/runtime-types.d.ts +85 -0
- package/dist/llms/runtime-types.d.ts.map +1 -0
- package/dist/runtime/history.d.ts +4 -0
- package/dist/runtime/history.d.ts.map +1 -0
- package/dist/runtime/host.d.ts +8 -0
- package/dist/runtime/host.d.ts.map +1 -0
- package/dist/runtime/rules.d.ts +1 -0
- package/dist/runtime/rules.d.ts.map +1 -1
- package/dist/runtime/runtime-builder.d.ts.map +1 -1
- package/dist/runtime/runtime-host.d.ts +103 -0
- package/dist/runtime/runtime-host.d.ts.map +1 -0
- package/dist/{session → runtime}/runtime-oauth-token-manager.d.ts +1 -1
- package/dist/{session → runtime}/runtime-oauth-token-manager.d.ts.map +1 -1
- package/dist/runtime/session-runtime.d.ts +3 -21
- package/dist/runtime/session-runtime.d.ts.map +1 -1
- package/dist/{session/session-agent-events.d.ts → services/agent-events.d.ts} +4 -4
- package/dist/services/agent-events.d.ts.map +1 -0
- package/dist/services/config.d.ts +3 -0
- package/dist/services/config.d.ts.map +1 -0
- package/dist/services/global-settings.d.ts +12 -0
- package/dist/services/global-settings.d.ts.map +1 -0
- package/dist/services/local-runtime-bootstrap.d.ts +47 -0
- package/dist/services/local-runtime-bootstrap.d.ts.map +1 -0
- package/dist/services/plugin-tools.d.ts +16 -0
- package/dist/services/plugin-tools.d.ts.map +1 -0
- package/dist/{providers → services/providers}/local-provider-registry.d.ts +4 -4
- package/dist/services/providers/local-provider-registry.d.ts.map +1 -0
- package/dist/{providers → services/providers}/local-provider-service.d.ts +13 -13
- package/dist/services/providers/local-provider-service.d.ts.map +1 -0
- package/dist/{session → services}/session-artifacts.d.ts +0 -4
- package/dist/services/session-artifacts.d.ts.map +1 -0
- package/dist/{session/utils/helpers.d.ts → services/session-data.d.ts} +19 -27
- package/dist/services/session-data.d.ts.map +1 -0
- package/dist/{session → services}/session-telemetry.d.ts +2 -2
- package/dist/services/session-telemetry.d.ts.map +1 -0
- package/dist/{storage → services/storage}/file-team-store.d.ts +2 -2
- package/dist/services/storage/file-team-store.d.ts.map +1 -0
- package/dist/{storage → services/storage}/provider-settings-legacy-migration.d.ts +1 -1
- package/dist/services/storage/provider-settings-legacy-migration.d.ts.map +1 -0
- package/dist/{storage → services/storage}/provider-settings-manager.d.ts +1 -1
- package/dist/services/storage/provider-settings-manager.d.ts.map +1 -0
- package/dist/{storage → services/storage}/sqlite-session-store.d.ts +3 -3
- package/dist/services/storage/sqlite-session-store.d.ts.map +1 -0
- package/dist/{storage → services/storage}/sqlite-team-store.d.ts +2 -2
- package/dist/services/storage/sqlite-team-store.d.ts.map +1 -0
- package/dist/{storage → services/storage}/team-store.d.ts +1 -1
- package/dist/services/storage/team-store.d.ts.map +1 -0
- package/dist/services/telemetry/ITelemetryAdapter.d.ts.map +1 -0
- package/dist/services/telemetry/OpenTelemetryAdapter.d.ts.map +1 -0
- package/dist/services/telemetry/OpenTelemetryProvider.d.ts.map +1 -0
- package/dist/services/telemetry/TelemetryLoggerSink.d.ts.map +1 -0
- package/dist/services/telemetry/TelemetryService.d.ts.map +1 -0
- package/dist/services/telemetry/core-events.d.ts.map +1 -0
- package/dist/services/telemetry/distinct-id.d.ts.map +1 -0
- package/dist/services/telemetry/index.d.ts.map +1 -0
- package/dist/services/telemetry/index.js +28 -0
- package/dist/{session/utils → services}/usage.d.ts +1 -1
- package/dist/services/usage.d.ts.map +1 -0
- package/dist/services/workspace/file-indexer.d.ts.map +1 -0
- package/dist/services/workspace/index.d.ts.map +1 -0
- package/dist/services/workspace/mention-enricher.d.ts.map +1 -0
- package/dist/services/workspace-manifest.d.ts +16 -0
- package/dist/services/workspace-manifest.d.ts.map +1 -0
- package/dist/session/file-session-service.d.ts +4 -1
- package/dist/session/file-session-service.d.ts.map +1 -1
- package/dist/session/persistence-service.d.ts +15 -25
- package/dist/session/persistence-service.d.ts.map +1 -1
- package/dist/session/session-manifest-store.d.ts +22 -0
- package/dist/session/session-manifest-store.d.ts.map +1 -0
- package/dist/session/session-row.d.ts +93 -0
- package/dist/session/session-row.d.ts.map +1 -0
- package/dist/session/session-service.d.ts +8 -109
- package/dist/session/session-service.d.ts.map +1 -1
- package/dist/session/session-team-coordination.d.ts +4 -4
- package/dist/session/session-team-coordination.d.ts.map +1 -1
- package/dist/session/subagent-session-manager.d.ts +36 -0
- package/dist/session/subagent-session-manager.d.ts.map +1 -0
- package/dist/session/team-persistence-store.d.ts +24 -0
- package/dist/session/team-persistence-store.d.ts.map +1 -0
- package/dist/transports/hub.d.ts +47 -0
- package/dist/transports/hub.d.ts.map +1 -0
- package/dist/{session/default-session-manager.d.ts → transports/local.d.ts} +30 -16
- package/dist/transports/local.d.ts.map +1 -0
- package/dist/transports/remote.d.ts +10 -0
- package/dist/transports/remote.d.ts.map +1 -0
- package/dist/transports/runtime-host-support.d.ts +22 -0
- package/dist/transports/runtime-host-support.d.ts.map +1 -0
- package/dist/{chat → types}/chat-schema.d.ts +10 -12
- package/dist/types/chat-schema.d.ts.map +1 -0
- package/dist/types/config.d.ts +10 -9
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/provider-settings.d.ts +4 -5
- package/dist/types/provider-settings.d.ts.map +1 -1
- package/dist/{session/utils/types.d.ts → types/session.d.ts} +16 -6
- package/dist/types/session.d.ts.map +1 -0
- package/dist/types/sessions.d.ts +19 -0
- package/dist/types/sessions.d.ts.map +1 -1
- package/dist/types/storage.d.ts +1 -3
- package/dist/types/storage.d.ts.map +1 -1
- package/dist/types.d.ts +14 -6
- package/dist/types.d.ts.map +1 -1
- package/package.json +22 -13
- package/src/ClineCore.ts +183 -85
- package/src/account/index.ts +3 -3
- package/src/account/rpc.ts +12 -12
- package/src/auth/cline.ts +1 -1
- package/src/auth/codex.ts +1 -1
- package/src/auth/oca.ts +1 -1
- package/src/cron/index.ts +5 -0
- package/src/cron/resource-limiter.ts +46 -0
- package/src/cron/schedule-command-service.ts +193 -0
- package/src/cron/schedule-service.ts +703 -0
- package/src/cron/scheduler.ts +637 -0
- package/src/cron/sqlite-schedule-store.ts +708 -0
- package/src/extensions/config/agent-config-loader.ts +18 -12
- package/src/extensions/config/agent-config-parser.ts +1 -1
- package/src/extensions/config/hooks-config-loader.ts +1 -2
- package/src/extensions/config/index.ts +0 -4
- package/src/extensions/config/runtime-commands.ts +6 -0
- package/src/extensions/config/user-instruction-config-loader.ts +1 -4
- package/src/extensions/context/agentic-compaction.ts +3 -3
- package/src/extensions/context/basic-compaction.ts +2 -2
- package/src/extensions/context/compaction-shared.ts +5 -4
- package/src/extensions/context/compaction.ts +3 -3
- package/src/extensions/plugin/plugin-config-loader.ts +17 -2
- package/src/extensions/plugin/plugin-loader.ts +48 -4
- package/src/extensions/plugin/plugin-module-import.ts +0 -2
- package/src/extensions/plugin/plugin-sandbox-bootstrap.ts +93 -39
- package/src/extensions/plugin/plugin-sandbox.ts +47 -27
- package/src/extensions/plugin/plugin-targeting.ts +32 -0
- package/src/{tools → extensions/tools}/definitions.ts +31 -50
- package/src/{tools → extensions/tools}/executors/apply-patch.ts +69 -80
- package/src/{tools → extensions/tools}/executors/file-read.ts +29 -4
- package/src/{tools → extensions/tools}/executors/search.ts +196 -4
- package/src/{tools → extensions/tools}/index.ts +10 -0
- package/src/{tools → extensions/tools}/model-tool-routing.ts +1 -1
- package/src/{tools → extensions/tools}/presets.ts +31 -47
- package/src/extensions/tools/runtime.ts +261 -0
- package/src/{tools → extensions/tools}/schemas.ts +4 -2
- package/src/{team → extensions/tools/team}/multi-agent.ts +80 -17
- package/src/{team → extensions/tools/team}/spawn-agent-tool.ts +1 -7
- package/src/{team → extensions/tools/team}/subagent-prompts.ts +2 -2
- package/src/{team → extensions/tools/team}/team-tools.ts +84 -53
- package/src/{tools → extensions/tools}/types.ts +5 -3
- package/src/{runtime → hooks}/checkpoint-hooks.ts +27 -0
- package/src/{runtime → hooks}/hook-file-hooks.ts +14 -13
- package/src/hooks/index.ts +0 -7
- package/src/hooks/subprocess-runner.ts +1 -1
- package/src/hooks/subprocess.ts +57 -257
- package/src/hub/browser-websocket.ts +137 -0
- package/src/hub/client.ts +574 -0
- package/src/hub/connect.ts +156 -0
- package/src/hub/daemon-entry.ts +87 -0
- package/src/hub/daemon.ts +181 -0
- package/src/hub/defaults.ts +43 -0
- package/src/hub/discovery.ts +247 -0
- package/src/hub/index.ts +14 -0
- package/src/hub/native-transport.ts +31 -0
- package/src/hub/runtime-handlers.ts +140 -0
- package/src/hub/server.ts +1888 -0
- package/src/hub/session-client.ts +460 -0
- package/src/hub/start-shared-server.ts +58 -0
- package/src/hub/transport.ts +14 -0
- package/src/hub/ui-client.ts +122 -0
- package/src/hub/workspace.ts +19 -0
- package/src/index.ts +264 -199
- package/src/llms/configured-provider-registry.ts +193 -0
- package/src/llms/provider-defaults.ts +637 -0
- package/src/llms/provider-settings.ts +263 -0
- package/src/llms/runtime-config.ts +43 -0
- package/src/llms/runtime-registry.ts +171 -0
- package/src/llms/runtime-types.ts +121 -0
- package/src/runtime/history.ts +237 -0
- package/src/runtime/host.ts +200 -0
- package/src/runtime/index.ts +1 -0
- package/src/runtime/rules.ts +12 -0
- package/src/runtime/runtime-builder.ts +37 -29
- package/src/runtime/runtime-host.ts +206 -0
- package/src/{session → runtime}/runtime-oauth-token-manager.ts +12 -16
- package/src/runtime/session-runtime.ts +2 -26
- package/src/{session/session-agent-events.ts → services/agent-events.ts} +7 -7
- package/src/services/config.ts +5 -0
- package/src/services/global-settings.ts +122 -0
- package/src/services/local-runtime-bootstrap.ts +318 -0
- package/src/services/plugin-tools.ts +85 -0
- package/src/{providers → services/providers}/local-provider-registry.ts +6 -6
- package/src/{providers → services/providers}/local-provider-service.ts +46 -41
- package/src/{session → services}/session-artifacts.ts +7 -19
- package/src/{session/utils/helpers.ts → services/session-data.ts} +90 -80
- package/src/{session → services}/session-telemetry.ts +7 -9
- package/src/services/storage/artifact-store.ts +1 -0
- package/src/{storage → services/storage}/file-team-store.ts +2 -2
- package/src/{storage → services/storage}/provider-settings-legacy-migration.ts +6 -4
- package/src/{storage → services/storage}/provider-settings-manager.ts +3 -3
- package/src/services/storage/session-store.ts +1 -0
- package/src/{storage → services/storage}/sqlite-session-store.ts +7 -12
- package/src/{storage → services/storage}/sqlite-team-store.ts +4 -4
- package/src/{storage → services/storage}/team-store.ts +1 -1
- package/src/{session/utils → services}/usage.ts +1 -1
- package/src/{input → services/workspace}/file-indexer.ts +26 -2
- package/src/{input → services/workspace}/mention-enricher.ts +1 -1
- package/src/{session → services}/workspace-manifest.ts +18 -0
- package/src/session/file-session-service.ts +10 -8
- package/src/session/index.ts +10 -23
- package/src/session/persistence-service.ts +144 -528
- package/src/session/session-manifest-store.ts +158 -0
- package/src/session/session-row.ts +199 -0
- package/src/session/session-service.ts +43 -389
- package/src/session/session-team-coordination.ts +14 -7
- package/src/session/subagent-session-manager.ts +397 -0
- package/src/session/team-persistence-store.ts +176 -0
- package/src/session/workspace-manager.ts +1 -1
- package/src/transports/hub.ts +656 -0
- package/src/{session/default-session-manager.ts → transports/local.ts} +263 -200
- package/src/transports/remote.ts +26 -0
- package/src/transports/runtime-host-support.ts +140 -0
- package/src/{chat → types}/chat-schema.ts +4 -5
- package/src/types/config.ts +10 -9
- package/src/types/provider-settings.ts +11 -7
- package/src/{session/utils/types.ts → types/session.ts} +16 -5
- package/src/types/sessions.ts +21 -0
- package/src/types/storage.ts +1 -6
- package/src/types.ts +52 -19
- package/dist/chat/chat-schema.d.ts.map +0 -1
- package/dist/hooks/persistent.d.ts +0 -64
- package/dist/hooks/persistent.d.ts.map +0 -1
- package/dist/input/file-indexer.d.ts.map +0 -1
- package/dist/input/index.d.ts.map +0 -1
- package/dist/input/mention-enricher.d.ts.map +0 -1
- package/dist/prompt/default-system.d.ts +0 -2
- package/dist/prompt/default-system.d.ts.map +0 -1
- package/dist/providers/local-provider-registry.d.ts.map +0 -1
- package/dist/providers/local-provider-service.d.ts.map +0 -1
- package/dist/runtime/checkpoint-hooks.d.ts.map +0 -1
- package/dist/runtime/hook-file-hooks.d.ts.map +0 -1
- package/dist/session/default-session-manager.d.ts.map +0 -1
- package/dist/session/rpc-runtime-ensure.d.ts +0 -53
- package/dist/session/rpc-runtime-ensure.d.ts.map +0 -1
- package/dist/session/rpc-session-service.d.ts +0 -13
- package/dist/session/rpc-session-service.d.ts.map +0 -1
- package/dist/session/rpc-spawn-lease.d.ts +0 -8
- package/dist/session/rpc-spawn-lease.d.ts.map +0 -1
- package/dist/session/session-agent-events.d.ts.map +0 -1
- package/dist/session/session-artifacts.d.ts.map +0 -1
- package/dist/session/session-config-builder.d.ts +0 -16
- package/dist/session/session-config-builder.d.ts.map +0 -1
- package/dist/session/session-host.d.ts +0 -15
- package/dist/session/session-host.d.ts.map +0 -1
- package/dist/session/session-manager.d.ts +0 -62
- package/dist/session/session-manager.d.ts.map +0 -1
- package/dist/session/session-telemetry.d.ts.map +0 -1
- package/dist/session/sqlite-rpc-session-backend.d.ts +0 -31
- package/dist/session/sqlite-rpc-session-backend.d.ts.map +0 -1
- package/dist/session/utils/helpers.d.ts.map +0 -1
- package/dist/session/utils/types.d.ts.map +0 -1
- package/dist/session/utils/usage.d.ts.map +0 -1
- package/dist/session/workspace-manifest.d.ts +0 -5
- package/dist/session/workspace-manifest.d.ts.map +0 -1
- package/dist/storage/file-team-store.d.ts.map +0 -1
- package/dist/storage/provider-settings-legacy-migration.d.ts.map +0 -1
- package/dist/storage/provider-settings-manager.d.ts.map +0 -1
- package/dist/storage/sqlite-session-store.d.ts.map +0 -1
- package/dist/storage/sqlite-team-store.d.ts.map +0 -1
- package/dist/storage/team-store.d.ts.map +0 -1
- package/dist/team/delegated-agent.d.ts.map +0 -1
- package/dist/team/index.d.ts.map +0 -1
- package/dist/team/multi-agent.d.ts.map +0 -1
- package/dist/team/projections.d.ts.map +0 -1
- package/dist/team/runtime.d.ts.map +0 -1
- package/dist/team/spawn-agent-tool.d.ts.map +0 -1
- package/dist/team/subagent-prompts.d.ts.map +0 -1
- package/dist/team/team-tools.d.ts.map +0 -1
- package/dist/telemetry/ITelemetryAdapter.d.ts.map +0 -1
- package/dist/telemetry/OpenTelemetryAdapter.d.ts.map +0 -1
- package/dist/telemetry/OpenTelemetryProvider.d.ts.map +0 -1
- package/dist/telemetry/TelemetryLoggerSink.d.ts.map +0 -1
- package/dist/telemetry/TelemetryService.d.ts.map +0 -1
- package/dist/telemetry/core-events.d.ts.map +0 -1
- package/dist/telemetry/distinct-id.d.ts.map +0 -1
- package/dist/telemetry/index.d.ts.map +0 -1
- package/dist/telemetry/index.js +0 -15
- package/dist/tools/constants.d.ts.map +0 -1
- package/dist/tools/definitions.d.ts.map +0 -1
- package/dist/tools/executors/apply-patch-parser.d.ts.map +0 -1
- package/dist/tools/executors/apply-patch.d.ts.map +0 -1
- package/dist/tools/executors/bash.d.ts.map +0 -1
- package/dist/tools/executors/editor.d.ts.map +0 -1
- package/dist/tools/executors/file-read.d.ts.map +0 -1
- package/dist/tools/executors/index.d.ts.map +0 -1
- package/dist/tools/executors/search.d.ts.map +0 -1
- package/dist/tools/executors/web-fetch.d.ts.map +0 -1
- package/dist/tools/helpers.d.ts.map +0 -1
- package/dist/tools/index.d.ts.map +0 -1
- package/dist/tools/model-tool-routing.d.ts.map +0 -1
- package/dist/tools/presets.d.ts.map +0 -1
- package/dist/tools/schemas.d.ts.map +0 -1
- package/dist/tools/types.d.ts.map +0 -1
- package/src/ClineCore.test.ts +0 -150
- package/src/account/cline-account-service.test.ts +0 -185
- package/src/account/featurebase-token.test.ts +0 -175
- package/src/account/rpc.test.ts +0 -63
- package/src/auth/bounded-ttl-cache.test.ts +0 -38
- package/src/auth/client.test.ts +0 -69
- package/src/auth/cline.test.ts +0 -267
- package/src/auth/codex.test.ts +0 -170
- package/src/auth/oca.test.ts +0 -340
- package/src/auth/server.test.ts +0 -287
- package/src/auth/utils.test.ts +0 -128
- package/src/extensions/config/agent-config-loader.test.ts +0 -236
- package/src/extensions/config/hooks-config-loader.test.ts +0 -20
- package/src/extensions/config/runtime-commands.test.ts +0 -115
- package/src/extensions/config/unified-config-file-watcher.test.ts +0 -196
- package/src/extensions/config/user-instruction-config-loader.test.ts +0 -246
- package/src/extensions/context/compaction.test.ts +0 -483
- package/src/extensions/mcp/config-loader.test.ts +0 -238
- package/src/extensions/mcp/manager.test.ts +0 -105
- package/src/extensions/plugin/plugin-config-loader.test.ts +0 -182
- package/src/extensions/plugin/plugin-loader.test.ts +0 -292
- package/src/extensions/plugin/plugin-sandbox.test.ts +0 -423
- package/src/hooks/persistent.ts +0 -661
- package/src/input/file-indexer.d.ts +0 -11
- package/src/input/file-indexer.test.ts +0 -127
- package/src/input/mention-enricher.test.ts +0 -85
- package/src/prompt/default-system.ts +0 -21
- package/src/providers/local-provider-service.test.ts +0 -1062
- package/src/runtime/checkpoint-hooks.test.ts +0 -168
- package/src/runtime/hook-file-hooks.test.ts +0 -311
- package/src/runtime/runtime-builder.team-persistence.test.ts +0 -242
- package/src/runtime/runtime-builder.test.ts +0 -616
- package/src/runtime/runtime-parity.test.ts +0 -143
- package/src/session/default-session-manager.e2e.test.ts +0 -384
- package/src/session/default-session-manager.test.ts +0 -2473
- package/src/session/persistence-service.test.ts +0 -241
- package/src/session/rpc-runtime-ensure.ts +0 -521
- package/src/session/rpc-session-service.ts +0 -107
- package/src/session/rpc-spawn-lease.test.ts +0 -49
- package/src/session/rpc-spawn-lease.ts +0 -122
- package/src/session/runtime-oauth-token-manager.test.ts +0 -137
- package/src/session/session-config-builder.ts +0 -172
- package/src/session/session-host.test.ts +0 -89
- package/src/session/session-host.ts +0 -213
- package/src/session/session-manager.ts +0 -74
- package/src/session/session-service.team-persistence.test.ts +0 -48
- package/src/session/sqlite-rpc-session-backend.ts +0 -303
- package/src/session/utils/helpers.test.ts +0 -160
- package/src/storage/artifact-store.ts +0 -1
- package/src/storage/provider-settings-legacy-migration.test.ts +0 -424
- package/src/storage/provider-settings-manager.test.ts +0 -191
- package/src/storage/session-store.ts +0 -1
- package/src/team/multi-agent.lifecycle.test.ts +0 -201
- package/src/team/spawn-agent-tool.test.ts +0 -387
- package/src/team/team-tools.test.ts +0 -906
- package/src/telemetry/OpenTelemetryAdapter.test.ts +0 -157
- package/src/telemetry/OpenTelemetryProvider.test.ts +0 -326
- package/src/telemetry/TelemetryLoggerSink.test.ts +0 -42
- package/src/telemetry/TelemetryService.test.ts +0 -134
- package/src/telemetry/distinct-id.test.ts +0 -57
- package/src/tools/definitions.test.ts +0 -780
- package/src/tools/executors/bash.test.ts +0 -87
- package/src/tools/executors/editor.test.ts +0 -35
- package/src/tools/executors/file-read.test.ts +0 -49
- package/src/tools/model-tool-routing.test.ts +0 -86
- package/src/tools/presets.test.ts +0 -70
- /package/dist/{tools → extensions/tools}/constants.d.ts +0 -0
- /package/dist/{tools → extensions/tools}/executors/apply-patch-parser.d.ts +0 -0
- /package/dist/{tools → extensions/tools}/executors/bash.d.ts +0 -0
- /package/dist/{tools → extensions/tools}/executors/editor.d.ts +0 -0
- /package/dist/{tools → extensions/tools}/executors/file-read.d.ts +0 -0
- /package/dist/{tools → extensions/tools}/executors/index.d.ts +0 -0
- /package/dist/{tools → extensions/tools}/executors/web-fetch.d.ts +0 -0
- /package/dist/{tools → extensions/tools}/helpers.d.ts +0 -0
- /package/dist/{tools → extensions/tools}/schemas.d.ts +0 -0
- /package/dist/{team → extensions/tools/team}/delegated-agent.d.ts +0 -0
- /package/dist/{team → extensions/tools/team}/index.d.ts +0 -0
- /package/dist/{team → extensions/tools/team}/projections.d.ts +0 -0
- /package/dist/{team → extensions/tools/team}/runtime.d.ts +0 -0
- /package/dist/{team → extensions/tools/team}/subagent-prompts.d.ts +0 -0
- /package/dist/{telemetry → services/telemetry}/ITelemetryAdapter.d.ts +0 -0
- /package/dist/{telemetry → services/telemetry}/OpenTelemetryAdapter.d.ts +0 -0
- /package/dist/{telemetry → services/telemetry}/OpenTelemetryProvider.d.ts +0 -0
- /package/dist/{telemetry → services/telemetry}/TelemetryLoggerSink.d.ts +0 -0
- /package/dist/{telemetry → services/telemetry}/TelemetryService.d.ts +0 -0
- /package/dist/{telemetry → services/telemetry}/core-events.d.ts +0 -0
- /package/dist/{telemetry → services/telemetry}/distinct-id.d.ts +0 -0
- /package/dist/{telemetry → services/telemetry}/index.d.ts +0 -0
- /package/dist/{input → services/workspace}/file-indexer.d.ts +0 -0
- /package/dist/{input → services/workspace}/index.d.ts +0 -0
- /package/dist/{input → services/workspace}/mention-enricher.d.ts +0 -0
- /package/src/{tools → extensions/tools}/constants.ts +0 -0
- /package/src/{tools → extensions/tools}/executors/apply-patch-parser.ts +0 -0
- /package/src/{tools → extensions/tools}/executors/bash.ts +0 -0
- /package/src/{tools → extensions/tools}/executors/editor.ts +0 -0
- /package/src/{tools → extensions/tools}/executors/index.ts +0 -0
- /package/src/{tools → extensions/tools}/executors/web-fetch.ts +0 -0
- /package/src/{tools → extensions/tools}/helpers.ts +0 -0
- /package/src/{team → extensions/tools/team}/delegated-agent.ts +0 -0
- /package/src/{team → extensions/tools/team}/index.ts +0 -0
- /package/src/{team → extensions/tools/team}/projections.ts +0 -0
- /package/src/{team → extensions/tools/team}/runtime.ts +0 -0
- /package/src/{storage → services/storage}/index.ts +0 -0
- /package/src/{telemetry → services/telemetry}/ITelemetryAdapter.ts +0 -0
- /package/src/{telemetry → services/telemetry}/OpenTelemetryAdapter.ts +0 -0
- /package/src/{telemetry → services/telemetry}/OpenTelemetryProvider.ts +0 -0
- /package/src/{telemetry → services/telemetry}/TelemetryLoggerSink.ts +0 -0
- /package/src/{telemetry → services/telemetry}/TelemetryService.ts +0 -0
- /package/src/{telemetry → services/telemetry}/core-events.ts +0 -0
- /package/src/{telemetry → services/telemetry}/distinct-id.ts +0 -0
- /package/src/{telemetry → services/telemetry}/index.ts +0 -0
- /package/src/{input → services/workspace}/index.ts +0 -0
package/README.md
CHANGED
|
@@ -21,24 +21,26 @@ npm install @clinebot/core
|
|
|
21
21
|
## Entry Points
|
|
22
22
|
|
|
23
23
|
- `@clinebot/core`: core contracts, shared utilities, and Node/server helpers for building hosts and runtimes
|
|
24
|
-
- `@clinebot/core/node`: optional alias for the same Node/server runtime surface
|
|
25
24
|
|
|
26
25
|
## Typical Usage
|
|
27
26
|
|
|
28
27
|
Most host apps should start with `@clinebot/core`.
|
|
29
28
|
|
|
30
29
|
```ts
|
|
31
|
-
import {
|
|
30
|
+
import { ClineCore } from "@clinebot/core";
|
|
32
31
|
|
|
33
|
-
const
|
|
32
|
+
const cline = await ClineCore.create({});
|
|
34
33
|
|
|
35
|
-
const result = await
|
|
34
|
+
const result = await cline.start({
|
|
36
35
|
config: {
|
|
37
36
|
providerId: "anthropic",
|
|
38
37
|
modelId: "claude-sonnet-4-6",
|
|
39
38
|
apiKey: process.env.ANTHROPIC_API_KEY ?? "",
|
|
40
39
|
cwd: process.cwd(),
|
|
40
|
+
mode: "act",
|
|
41
41
|
enableTools: true,
|
|
42
|
+
enableSpawnAgent: false,
|
|
43
|
+
enableAgentTeams: false,
|
|
42
44
|
systemPrompt: "You are a concise assistant.",
|
|
43
45
|
},
|
|
44
46
|
prompt: "Summarize this project.",
|
|
@@ -46,7 +48,7 @@ const result = await host.start({
|
|
|
46
48
|
});
|
|
47
49
|
|
|
48
50
|
console.log(result.result?.text);
|
|
49
|
-
await
|
|
51
|
+
await cline.dispose();
|
|
50
52
|
```
|
|
51
53
|
|
|
52
54
|
## Session Bootstrap
|
|
@@ -54,7 +56,8 @@ await host.dispose();
|
|
|
54
56
|
`ClineCore.create(...)` also accepts `prepare(input)`.
|
|
55
57
|
|
|
56
58
|
Use it when a host needs to prepare workspace-scoped runtime state before each
|
|
57
|
-
session starts, then apply watcher/extensions/telemetry inputs
|
|
59
|
+
session starts, then apply watcher/extensions/telemetry inputs through
|
|
60
|
+
`localRuntime.configOverrides` without widening the shared host contract.
|
|
58
61
|
|
|
59
62
|
## Main APIs
|
|
60
63
|
|
|
@@ -62,8 +65,9 @@ session starts, then apply watcher/extensions/telemetry inputs generically.
|
|
|
62
65
|
|
|
63
66
|
Use `@clinebot/core` for host-facing runtime assembly:
|
|
64
67
|
|
|
65
|
-
- `
|
|
66
|
-
- `
|
|
68
|
+
- `ClineCore.create(...)`
|
|
69
|
+
- `createRuntimeHost(...)`
|
|
70
|
+
- `LocalRuntimeHost`
|
|
67
71
|
- `DefaultRuntimeBuilder`
|
|
68
72
|
|
|
69
73
|
### Default Tools
|
|
@@ -80,13 +84,12 @@ The package also exports storage and settings helpers such as:
|
|
|
80
84
|
|
|
81
85
|
- `ProviderSettingsManager`
|
|
82
86
|
- `SqliteTeamStore`
|
|
83
|
-
- SQLite
|
|
87
|
+
- SQLite-backed local session stores and artifacts through `@clinebot/core`
|
|
84
88
|
|
|
85
89
|
## Related Packages
|
|
86
90
|
|
|
87
91
|
- `@clinebot/agents`: stateless agent loop and tool primitives
|
|
88
92
|
- `@clinebot/llms`: provider/model configuration and handlers
|
|
89
|
-
- `@clinebot/rpc`: remote session and runtime transport
|
|
90
93
|
|
|
91
94
|
## More Examples
|
|
92
95
|
|
package/dist/ClineCore.d.ts
CHANGED
|
@@ -1,29 +1,31 @@
|
|
|
1
|
-
import type { AgentConfig, ITelemetryService, ToolApprovalRequest, ToolApprovalResult } from "@clinebot/shared";
|
|
2
|
-
import type {
|
|
3
|
-
import {
|
|
4
|
-
import type { StartSessionInput } from "./
|
|
5
|
-
import type {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
1
|
+
import type { AgentConfig, BasicLogger, ITelemetryService, ToolApprovalRequest, ToolApprovalResult } from "@clinebot/shared";
|
|
2
|
+
import type { ToolExecutors } from "./extensions/tools";
|
|
3
|
+
import type { SessionBackend } from "./runtime/host";
|
|
4
|
+
import type { LocalRuntimeStartOptions, RuntimeHost, RuntimeHostMode, RuntimeHostSubscribeOptions, StartSessionInput, StartSessionResult } from "./runtime/runtime-host";
|
|
5
|
+
import type { CoreSessionConfig } from "./types/config";
|
|
6
|
+
import type { CoreSessionEvent } from "./types/events";
|
|
7
|
+
import type { SessionMessagesArtifactUploader } from "./types/session";
|
|
8
|
+
export interface HubOptions {
|
|
9
|
+
endpoint?: string;
|
|
10
|
+
authToken?: string;
|
|
11
|
+
strategy?: "prefer-hub" | "require-hub";
|
|
12
|
+
clientType?: string;
|
|
13
|
+
displayName?: string;
|
|
14
|
+
workspaceRoot?: string;
|
|
15
|
+
cwd?: string;
|
|
16
|
+
}
|
|
17
|
+
export interface RemoteOptions {
|
|
18
|
+
endpoint: string;
|
|
19
|
+
authToken?: string;
|
|
20
|
+
clientType?: string;
|
|
21
|
+
displayName?: string;
|
|
22
|
+
workspaceRoot?: string;
|
|
23
|
+
cwd?: string;
|
|
24
|
+
}
|
|
25
|
+
export type { RuntimeHostMode };
|
|
26
|
+
export interface ClineCoreStartInput extends Omit<StartSessionInput, "config" | "localRuntime"> {
|
|
27
|
+
config: CoreSessionConfig;
|
|
28
|
+
localRuntime?: LocalRuntimeStartOptions;
|
|
27
29
|
}
|
|
28
30
|
export interface ClineCoreOptions {
|
|
29
31
|
/**
|
|
@@ -38,17 +40,23 @@ export interface ClineCoreOptions {
|
|
|
38
40
|
*/
|
|
39
41
|
distinctId?: string;
|
|
40
42
|
/**
|
|
41
|
-
* Controls how the
|
|
42
|
-
* - `"auto"` (default) —
|
|
43
|
-
*
|
|
44
|
-
* - `"
|
|
45
|
-
* - `"
|
|
43
|
+
* Controls how the runtime host is selected:
|
|
44
|
+
* - `"auto"` (default) — prefers a compatible local hub when one is available and falls
|
|
45
|
+
* back to local in-process execution when not.
|
|
46
|
+
* - `"hub"` — requires a compatible websocket hub runtime; throws if one is not reachable.
|
|
47
|
+
* - `"remote"` — requires an explicit remote websocket hub endpoint.
|
|
48
|
+
* - `"local"` — always uses local in-process execution and local SQLite/file storage.
|
|
49
|
+
*/
|
|
50
|
+
backendMode?: RuntimeHostMode;
|
|
51
|
+
/**
|
|
52
|
+
* Hub runtime connection options. Used when `backendMode` is `"hub"` or when `"auto"`
|
|
53
|
+
* should prefer a shared local hub if available.
|
|
46
54
|
*/
|
|
47
|
-
|
|
55
|
+
hub?: HubOptions;
|
|
48
56
|
/**
|
|
49
|
-
*
|
|
57
|
+
* Remote hub connection options. Only relevant when `backendMode` is `"remote"`.
|
|
50
58
|
*/
|
|
51
|
-
|
|
59
|
+
remote?: RemoteOptions;
|
|
52
60
|
/**
|
|
53
61
|
* Override one or more default tool executors (e.g. file I/O, shell, browser).
|
|
54
62
|
* Partial — only the keys you supply are replaced; the rest use built-in implementations.
|
|
@@ -59,6 +67,11 @@ export interface ClineCoreOptions {
|
|
|
59
67
|
* If omitted, telemetry is a no-op.
|
|
60
68
|
*/
|
|
61
69
|
telemetry?: ITelemetryService;
|
|
70
|
+
/**
|
|
71
|
+
* Optional structured logger for core-side operational diagnostics such as
|
|
72
|
+
* runtime-host selection and fallback decisions.
|
|
73
|
+
*/
|
|
74
|
+
logger?: BasicLogger;
|
|
62
75
|
/**
|
|
63
76
|
* Per-tool approval policies that control whether a tool runs automatically,
|
|
64
77
|
* requires user confirmation, or is blocked entirely.
|
|
@@ -70,31 +83,47 @@ export interface ClineCoreOptions {
|
|
|
70
83
|
* If omitted, all approval-required tools are auto-denied.
|
|
71
84
|
*/
|
|
72
85
|
requestToolApproval?: (request: ToolApprovalRequest) => Promise<ToolApprovalResult>;
|
|
86
|
+
/**
|
|
87
|
+
* Optional hook invoked after `messages.json` is persisted to disk.
|
|
88
|
+
* Consumers can use this to mirror session transcripts into remote storage.
|
|
89
|
+
*/
|
|
90
|
+
messagesArtifactUploader?: SessionMessagesArtifactUploader;
|
|
91
|
+
/**
|
|
92
|
+
* Custom `fetch` implementation forwarded to the AI gateway providers used
|
|
93
|
+
* by local sessions. When supplied, it is threaded into each
|
|
94
|
+
* `ProviderConfig.fetch` built during session bootstrap, which in turn
|
|
95
|
+
* populates `GatewayProviderSettings.fetch` (and the top-level
|
|
96
|
+
* `GatewayConfig.fetch` fallback) so hosts can inject custom HTTP behavior
|
|
97
|
+
* such as proxies, retries, tracing, or test doubles.
|
|
98
|
+
*
|
|
99
|
+
* Per-session or per-provider overrides still win: an explicit
|
|
100
|
+
* `config.fetch` on `CoreSessionConfig` or a stored provider-level `fetch`
|
|
101
|
+
* takes precedence over this default.
|
|
102
|
+
*
|
|
103
|
+
* Applies only to sessions executed in this process (local and fallback-
|
|
104
|
+
* to-local auto mode). For hub and remote runtimes the HTTP call happens
|
|
105
|
+
* inside the process that owns the gateway, so configure `fetch` there:
|
|
106
|
+
* - `startHubServer({ fetch })` / `ensureHubServer({ fetch })` from
|
|
107
|
+
* `@clinebot/hub`
|
|
108
|
+
* - `createLocalHubScheduleRuntimeHandlers({ fetch })` from
|
|
109
|
+
* `@clinebot/core/hub` for the scheduler
|
|
110
|
+
*/
|
|
111
|
+
fetch?: typeof fetch;
|
|
73
112
|
/**
|
|
74
113
|
* An already-constructed session backend to use instead of resolving one automatically.
|
|
75
114
|
* Intended for testing or embedding a custom persistence layer.
|
|
76
115
|
* @internal
|
|
77
116
|
*/
|
|
78
117
|
sessionService?: SessionBackend;
|
|
79
|
-
/**
|
|
80
|
-
* Factory that creates team management tools for the multi-agent team system.
|
|
81
|
-
* When provided, team tools are registered whenever `enableAgentTeams` is `true`
|
|
82
|
-
* on a session config.
|
|
83
|
-
*
|
|
84
|
-
* Consumers that depend on `@clinebot/enterprise` can pass
|
|
85
|
-
* `bootstrapAgentTeams` here directly.
|
|
86
|
-
*/
|
|
87
|
-
teamToolsFactory?: TeamToolsFactory;
|
|
88
118
|
/**
|
|
89
119
|
* Optional hook invoked before each session starts.
|
|
90
120
|
* Use this to prepare workspace-scoped runtime state and then return an
|
|
91
|
-
* adapter that mutates the
|
|
92
|
-
* builds the runtime.
|
|
121
|
+
* adapter that mutates the shared session input before core starts the run.
|
|
93
122
|
*/
|
|
94
|
-
prepare?: (input:
|
|
123
|
+
prepare?: (input: ClineCoreStartInput) => Promise<StartSessionBootstrap | undefined> | StartSessionBootstrap | undefined;
|
|
95
124
|
}
|
|
96
125
|
export interface StartSessionBootstrap {
|
|
97
|
-
applyToStartSessionInput(input:
|
|
126
|
+
applyToStartSessionInput(input: ClineCoreStartInput): Promise<ClineCoreStartInput> | ClineCoreStartInput;
|
|
98
127
|
dispose?(): Promise<void> | void;
|
|
99
128
|
}
|
|
100
129
|
/**
|
|
@@ -108,29 +137,33 @@ export interface StartSessionBootstrap {
|
|
|
108
137
|
* const session = await cline.start({ ... });
|
|
109
138
|
* ```
|
|
110
139
|
*/
|
|
111
|
-
export declare class ClineCore implements
|
|
140
|
+
export declare class ClineCore implements RuntimeHost {
|
|
112
141
|
readonly clientName: string | undefined;
|
|
142
|
+
readonly runtimeAddress: string | undefined;
|
|
113
143
|
private readonly host;
|
|
114
144
|
private readonly prepare;
|
|
115
|
-
private readonly
|
|
145
|
+
private readonly defaultToolExecutors;
|
|
116
146
|
private readonly activeSessionBootstraps;
|
|
117
147
|
private readonly unsubscribeBootstrapCleanup;
|
|
118
148
|
private constructor();
|
|
119
149
|
static create(options?: ClineCoreOptions): Promise<ClineCore>;
|
|
120
150
|
private disposeSessionBootstrap;
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
151
|
+
private toClineCoreStartInput;
|
|
152
|
+
private normalizeStartInput;
|
|
153
|
+
start(input: StartSessionInput): Promise<StartSessionResult>;
|
|
154
|
+
start(input: ClineCoreStartInput): Promise<StartSessionResult>;
|
|
155
|
+
send: RuntimeHost["send"];
|
|
156
|
+
getAccumulatedUsage: RuntimeHost["getAccumulatedUsage"];
|
|
157
|
+
abort: RuntimeHost["abort"];
|
|
158
|
+
stop: RuntimeHost["stop"];
|
|
159
|
+
dispose: RuntimeHost["dispose"];
|
|
160
|
+
get: RuntimeHost["get"];
|
|
161
|
+
list: RuntimeHost["list"];
|
|
162
|
+
delete: RuntimeHost["delete"];
|
|
163
|
+
update: RuntimeHost["update"];
|
|
164
|
+
readMessages: RuntimeHost["readMessages"];
|
|
165
|
+
handleHookEvent: RuntimeHost["handleHookEvent"];
|
|
166
|
+
subscribe(listener: (event: CoreSessionEvent) => void, options?: RuntimeHostSubscribeOptions): () => void;
|
|
167
|
+
updateSessionModel: RuntimeHost["updateSessionModel"];
|
|
135
168
|
}
|
|
136
169
|
//# sourceMappingURL=ClineCore.d.ts.map
|
package/dist/ClineCore.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClineCore.d.ts","sourceRoot":"","sources":["../src/ClineCore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,WAAW,EACX,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"ClineCore.d.ts","sourceRoot":"","sources":["../src/ClineCore.ts"],"names":[],"mappings":"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"}
|
package/dist/account/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { ClineAccountService, type ClineAccountServiceOptions, } from "./cline-account-service";
|
|
2
|
-
export { type ClineAccountOperations,
|
|
2
|
+
export { type ClineAccountOperations, executeClineAccountAction, isClineAccountActionRequest, type ProviderActionExecutor, RpcClineAccountService, } from "./rpc";
|
|
3
3
|
export type { ClineAccountBalance, ClineAccountOrganization, ClineAccountOrganizationBalance, ClineAccountOrganizationUsageTransaction, ClineAccountPaymentTransaction, ClineAccountUsageTransaction, ClineAccountUser, ClineOrganization, FeaturebaseTokenResponse, UserRemoteConfigOrganization, UserRemoteConfigResponse, } from "./types";
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/account/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,mBAAmB,EACnB,KAAK,0BAA0B,GAC/B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACN,KAAK,sBAAsB,EAC3B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/account/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,mBAAmB,EACnB,KAAK,0BAA0B,GAC/B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACN,KAAK,sBAAsB,EAC3B,yBAAyB,EACzB,2BAA2B,EAC3B,KAAK,sBAAsB,EAC3B,sBAAsB,GACtB,MAAM,OAAO,CAAC;AACf,YAAY,EACX,mBAAmB,EACnB,wBAAwB,EACxB,+BAA+B,EAC/B,wCAAwC,EACxC,8BAA8B,EAC9B,4BAA4B,EAC5B,gBAAgB,EAChB,iBAAiB,EACjB,wBAAwB,EACxB,4BAA4B,EAC5B,wBAAwB,GACxB,MAAM,SAAS,CAAC"}
|
package/dist/account/rpc.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ClineAccountActionRequest, ProviderActionRequest } from "@clinebot/shared";
|
|
2
2
|
import type { ClineAccountBalance, ClineAccountOrganization, ClineAccountOrganizationBalance, ClineAccountOrganizationUsageTransaction, ClineAccountPaymentTransaction, ClineAccountUsageTransaction, ClineAccountUser, FeaturebaseTokenResponse } from "./types";
|
|
3
3
|
export interface ClineAccountOperations {
|
|
4
4
|
fetchMe(): Promise<ClineAccountUser>;
|
|
@@ -14,16 +14,16 @@ export interface ClineAccountOperations {
|
|
|
14
14
|
switchAccount(organizationId?: string | null): Promise<void>;
|
|
15
15
|
fetchFeaturebaseToken?(): Promise<FeaturebaseTokenResponse | undefined>;
|
|
16
16
|
}
|
|
17
|
-
export declare function
|
|
18
|
-
export declare function
|
|
19
|
-
export interface
|
|
20
|
-
runProviderAction(request:
|
|
17
|
+
export declare function isClineAccountActionRequest(request: ProviderActionRequest): request is ClineAccountActionRequest;
|
|
18
|
+
export declare function executeClineAccountAction(request: ClineAccountActionRequest, service: ClineAccountOperations): Promise<unknown>;
|
|
19
|
+
export interface ProviderActionExecutor {
|
|
20
|
+
runProviderAction(request: ProviderActionRequest): Promise<{
|
|
21
21
|
result: unknown;
|
|
22
22
|
}>;
|
|
23
23
|
}
|
|
24
24
|
export declare class RpcClineAccountService implements ClineAccountOperations {
|
|
25
25
|
private readonly executor;
|
|
26
|
-
constructor(executor:
|
|
26
|
+
constructor(executor: ProviderActionExecutor);
|
|
27
27
|
fetchMe(): Promise<ClineAccountUser>;
|
|
28
28
|
fetchBalance(userId?: string): Promise<ClineAccountBalance>;
|
|
29
29
|
fetchUsageTransactions(userId?: string): Promise<ClineAccountUsageTransaction[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../src/account/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,
|
|
1
|
+
{"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../src/account/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,yBAAyB,EACzB,qBAAqB,EACrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EACX,mBAAmB,EACnB,wBAAwB,EACxB,+BAA+B,EAC/B,wCAAwC,EACxC,8BAA8B,EAC9B,4BAA4B,EAC5B,gBAAgB,EAChB,wBAAwB,EACxB,MAAM,SAAS,CAAC;AAEjB,MAAM,WAAW,sBAAsB;IACtC,OAAO,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACrC,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC5D,sBAAsB,CACrB,MAAM,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,4BAA4B,EAAE,CAAC,CAAC;IAC3C,wBAAwB,CACvB,MAAM,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,8BAA8B,EAAE,CAAC,CAAC;IAC7C,sBAAsB,IAAI,OAAO,CAAC,wBAAwB,EAAE,CAAC,CAAC;IAC9D,wBAAwB,CACvB,cAAc,EAAE,MAAM,GACpB,OAAO,CAAC,+BAA+B,CAAC,CAAC;IAC5C,kCAAkC,CAAC,KAAK,EAAE;QACzC,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,OAAO,CAAC,wCAAwC,EAAE,CAAC,CAAC;IACxD,aAAa,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,qBAAqB,CAAC,IAAI,OAAO,CAAC,wBAAwB,GAAG,SAAS,CAAC,CAAC;CACxE;AAED,wBAAgB,2BAA2B,CAC1C,OAAO,EAAE,qBAAqB,GAC5B,OAAO,IAAI,yBAAyB,CAEtC;AAED,wBAAsB,yBAAyB,CAC9C,OAAO,EAAE,yBAAyB,EAClC,OAAO,EAAE,sBAAsB,GAC7B,OAAO,CAAC,OAAO,CAAC,CA+BlB;AAED,MAAM,WAAW,sBAAsB;IACtC,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC;QAC1D,MAAM,EAAE,OAAO,CAAC;KAChB,CAAC,CAAC;CACH;AAED,qBAAa,sBAAuB,YAAW,sBAAsB;IACpE,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAyB;gBAEtC,QAAQ,EAAE,sBAAsB;IAI/B,OAAO,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAOpC,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAQ3D,sBAAsB,CAClC,MAAM,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,4BAA4B,EAAE,CAAC;IAQ7B,wBAAwB,CACpC,MAAM,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,8BAA8B,EAAE,CAAC;IAQ/B,sBAAsB,IAAI,OAAO,CAAC,wBAAwB,EAAE,CAAC;IAO7D,wBAAwB,CACpC,cAAc,EAAE,MAAM,GACpB,OAAO,CAAC,+BAA+B,CAAC;IAY9B,kCAAkC,CAAC,KAAK,EAAE;QACtD,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,OAAO,CAAC,wCAAwC,EAAE,CAAC;IAa1C,aAAa,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ5D,qBAAqB,IAAI,OAAO,CAC5C,wBAAwB,GAAG,SAAS,CACpC;YAOa,OAAO;CAIrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cron/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare class ResourceLimiter {
|
|
2
|
+
private readonly globalMaxConcurrency;
|
|
3
|
+
private readonly activeExecutions;
|
|
4
|
+
constructor(globalMaxConcurrency: number);
|
|
5
|
+
acquire(scheduleId: string, executionId: string, maxParallel: number): boolean;
|
|
6
|
+
release(scheduleId: string, executionId: string): void;
|
|
7
|
+
getGlobalActiveCount(): number;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=resource-limiter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resource-limiter.d.ts","sourceRoot":"","sources":["../../src/cron/resource-limiter.ts"],"names":[],"mappings":"AAAA,qBAAa,eAAe;IAC3B,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAS;IAC9C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkC;gBAEvD,oBAAoB,EAAE,MAAM;IAIjC,OAAO,CACb,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,GACjB,OAAO;IAeH,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAWtD,oBAAoB,IAAI,MAAM;CAOrC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { HubCommandEnvelope, HubReplyEnvelope } from "@clinebot/shared";
|
|
2
|
+
import type { HubScheduleService } from "./schedule-service";
|
|
3
|
+
export declare class HubScheduleCommandService {
|
|
4
|
+
private readonly schedules;
|
|
5
|
+
constructor(schedules: HubScheduleService);
|
|
6
|
+
handleCommand(envelope: HubCommandEnvelope): Promise<HubReplyEnvelope>;
|
|
7
|
+
private toCreateInput;
|
|
8
|
+
private toUpdateInput;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=schedule-command-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schedule-command-service.d.ts","sourceRoot":"","sources":["../../src/cron/schedule-command-service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,kBAAkB,EAClB,gBAAgB,EAGhB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AA2B7D,qBAAa,yBAAyB;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAAT,SAAS,EAAE,kBAAkB;IAE7C,aAAa,CACzB,QAAQ,EAAE,kBAAkB,GAC1B,OAAO,CAAC,gBAAgB,CAAC;IAiH5B,OAAO,CAAC,aAAa;IAoBrB,OAAO,CAAC,aAAa;CAoBrB"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import type { BasicLogger, ChatRunTurnRequest, ChatStartSessionArtifacts, ChatStartSessionRequest, HubScheduleCreateInput, HubScheduleUpdateInput, ScheduleExecutionRecord, ScheduleRecord } from "@clinebot/shared";
|
|
2
|
+
import { type ListScheduleExecutionsOptions, type ListSchedulesOptions, type ScheduleExecutionStats } from "./sqlite-schedule-store";
|
|
3
|
+
type HubScheduleTurnResult = {
|
|
4
|
+
text: string;
|
|
5
|
+
usage?: {
|
|
6
|
+
inputTokens?: number;
|
|
7
|
+
outputTokens?: number;
|
|
8
|
+
cacheReadTokens?: number;
|
|
9
|
+
cacheWriteTokens?: number;
|
|
10
|
+
totalCost?: number;
|
|
11
|
+
};
|
|
12
|
+
inputTokens?: number;
|
|
13
|
+
outputTokens?: number;
|
|
14
|
+
iterations?: number;
|
|
15
|
+
finishReason?: string;
|
|
16
|
+
messages?: unknown[];
|
|
17
|
+
toolCalls?: Array<{
|
|
18
|
+
name: string;
|
|
19
|
+
input?: unknown;
|
|
20
|
+
output?: unknown;
|
|
21
|
+
error?: string;
|
|
22
|
+
durationMs?: number;
|
|
23
|
+
}>;
|
|
24
|
+
};
|
|
25
|
+
export interface ScheduleAutonomousOptions {
|
|
26
|
+
enabled?: boolean;
|
|
27
|
+
idleTimeoutSeconds?: number;
|
|
28
|
+
pollIntervalSeconds?: number;
|
|
29
|
+
}
|
|
30
|
+
export interface HubScheduleRuntimeHandlers {
|
|
31
|
+
startSession(request: ChatStartSessionRequest): Promise<{
|
|
32
|
+
sessionId: string;
|
|
33
|
+
startResult?: ChatStartSessionArtifacts;
|
|
34
|
+
}>;
|
|
35
|
+
sendSession(sessionId: string, request: ChatRunTurnRequest): Promise<{
|
|
36
|
+
result: HubScheduleTurnResult;
|
|
37
|
+
}>;
|
|
38
|
+
abortSession(sessionId: string): Promise<{
|
|
39
|
+
applied: boolean;
|
|
40
|
+
}>;
|
|
41
|
+
stopSession(sessionId: string): Promise<{
|
|
42
|
+
applied: boolean;
|
|
43
|
+
}>;
|
|
44
|
+
}
|
|
45
|
+
export interface ActiveScheduledExecution {
|
|
46
|
+
executionId: string;
|
|
47
|
+
scheduleId: string;
|
|
48
|
+
sessionId: string;
|
|
49
|
+
startedAt: string;
|
|
50
|
+
timeoutAt?: string;
|
|
51
|
+
}
|
|
52
|
+
export interface HubScheduleServiceOptions {
|
|
53
|
+
runtimeHandlers: HubScheduleRuntimeHandlers;
|
|
54
|
+
eventPublisher?: (eventType: string, payload: unknown) => void;
|
|
55
|
+
logger?: BasicLogger;
|
|
56
|
+
sessionsDbPath?: string;
|
|
57
|
+
pollIntervalMs?: number;
|
|
58
|
+
globalMaxConcurrency?: number;
|
|
59
|
+
claimLeaseSeconds?: number;
|
|
60
|
+
}
|
|
61
|
+
export declare class HubScheduleService {
|
|
62
|
+
private readonly store;
|
|
63
|
+
private readonly resourceLimiter;
|
|
64
|
+
private readonly options;
|
|
65
|
+
private readonly claimLeaseMs;
|
|
66
|
+
private readonly activeExecutions;
|
|
67
|
+
private timer;
|
|
68
|
+
private started;
|
|
69
|
+
private ticking;
|
|
70
|
+
private disposed;
|
|
71
|
+
constructor(options: HubScheduleServiceOptions);
|
|
72
|
+
start(): Promise<void>;
|
|
73
|
+
stop(): Promise<void>;
|
|
74
|
+
dispose(): Promise<void>;
|
|
75
|
+
createSchedule(input: HubScheduleCreateInput): ScheduleRecord;
|
|
76
|
+
getSchedule(scheduleId: string): ScheduleRecord | undefined;
|
|
77
|
+
listSchedules(options?: ListSchedulesOptions): ScheduleRecord[];
|
|
78
|
+
updateSchedule(scheduleId: string, updates: HubScheduleUpdateInput): ScheduleRecord | undefined;
|
|
79
|
+
deleteSchedule(scheduleId: string): boolean;
|
|
80
|
+
pauseSchedule(scheduleId: string): ScheduleRecord | undefined;
|
|
81
|
+
resumeSchedule(scheduleId: string): ScheduleRecord | undefined;
|
|
82
|
+
triggerScheduleNow(scheduleId: string): Promise<ScheduleExecutionRecord | undefined>;
|
|
83
|
+
listScheduleExecutions(options: ListScheduleExecutionsOptions): ScheduleExecutionRecord[];
|
|
84
|
+
getScheduleStats(scheduleId: string): ScheduleExecutionStats;
|
|
85
|
+
getActiveExecutions(): ActiveScheduledExecution[];
|
|
86
|
+
getUpcomingRuns(limit?: number): Array<{
|
|
87
|
+
scheduleId: string;
|
|
88
|
+
name: string;
|
|
89
|
+
nextRunAt: string;
|
|
90
|
+
}>;
|
|
91
|
+
private tick;
|
|
92
|
+
private executeClaimedSchedule;
|
|
93
|
+
private startClaimLeaseHeartbeat;
|
|
94
|
+
private buildStartRequest;
|
|
95
|
+
private executeSchedule;
|
|
96
|
+
private publishEvent;
|
|
97
|
+
private runAutonomousIdleLoop;
|
|
98
|
+
}
|
|
99
|
+
export {};
|
|
100
|
+
//# sourceMappingURL=schedule-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schedule-service.d.ts","sourceRoot":"","sources":["../../src/cron/schedule-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { type HubScheduleCreateInput, type HubScheduleUpdateInput, type ScheduleExecutionRecord, type ScheduleExecutionStatus, type ScheduleRecord } from "@clinebot/shared";
|
|
2
|
+
export interface ParsedCron {
|
|
3
|
+
minutes: number[];
|
|
4
|
+
hours: number[];
|
|
5
|
+
daysOfMonth: number[];
|
|
6
|
+
months: number[];
|
|
7
|
+
daysOfWeek: number[];
|
|
8
|
+
}
|
|
9
|
+
export declare function parseCron(pattern: string): ParsedCron;
|
|
10
|
+
export declare function validateCronPattern(pattern: string): void;
|
|
11
|
+
export declare function getNextCronTime(pattern: string, after: number): number;
|
|
12
|
+
export declare class ScheduleStore {
|
|
13
|
+
private schedules;
|
|
14
|
+
private executions;
|
|
15
|
+
load(schedules: ScheduleRecord[] | undefined, executions: ScheduleExecutionRecord[] | undefined): void;
|
|
16
|
+
snapshotSchedules(): ScheduleRecord[];
|
|
17
|
+
snapshotExecutions(): ScheduleExecutionRecord[];
|
|
18
|
+
create(input: HubScheduleCreateInput, now: number): ScheduleRecord;
|
|
19
|
+
get(scheduleId: string): ScheduleRecord | undefined;
|
|
20
|
+
list(): ScheduleRecord[];
|
|
21
|
+
update(input: HubScheduleUpdateInput, now: number): ScheduleRecord;
|
|
22
|
+
setEnabled(scheduleId: string, enabled: boolean, now: number): ScheduleRecord;
|
|
23
|
+
delete(scheduleId: string): void;
|
|
24
|
+
recordTriggered(scheduleId: string, now: number): ScheduleRecord;
|
|
25
|
+
getDueSchedules(now: number): ScheduleRecord[];
|
|
26
|
+
startExecution(scheduleId: string, sessionId: string, now: number): ScheduleExecutionRecord;
|
|
27
|
+
completeExecution(executionId: string, status: Exclude<ScheduleExecutionStatus, "running">, now: number, errorMessage?: string): ScheduleExecutionRecord;
|
|
28
|
+
listExecutions(scheduleId?: string): ScheduleExecutionRecord[];
|
|
29
|
+
}
|
|
30
|
+
export interface SchedulerTriggerContext {
|
|
31
|
+
scheduleId: string;
|
|
32
|
+
sessionId: string;
|
|
33
|
+
executionId: string;
|
|
34
|
+
}
|
|
35
|
+
export interface SchedulerCallbacks {
|
|
36
|
+
onTrigger(record: ScheduleRecord): Promise<{
|
|
37
|
+
sessionId: string;
|
|
38
|
+
}>;
|
|
39
|
+
onExecutionCompleted(context: SchedulerTriggerContext, execution: ScheduleExecutionRecord): void;
|
|
40
|
+
onExecutionFailed(context: SchedulerTriggerContext, execution: ScheduleExecutionRecord, error: unknown): void;
|
|
41
|
+
onScheduleUpdated(record: ScheduleRecord): void;
|
|
42
|
+
onPersist(): Promise<void>;
|
|
43
|
+
}
|
|
44
|
+
export interface HubSchedulerOptions {
|
|
45
|
+
store: ScheduleStore;
|
|
46
|
+
callbacks: SchedulerCallbacks;
|
|
47
|
+
now?: () => number;
|
|
48
|
+
pollIntervalMs?: number;
|
|
49
|
+
}
|
|
50
|
+
export declare class HubScheduler {
|
|
51
|
+
private readonly store;
|
|
52
|
+
private readonly callbacks;
|
|
53
|
+
private readonly now;
|
|
54
|
+
private readonly pollIntervalMs;
|
|
55
|
+
private timer;
|
|
56
|
+
private readonly runningExecutions;
|
|
57
|
+
constructor(options: HubSchedulerOptions);
|
|
58
|
+
start(): void;
|
|
59
|
+
stop(): void;
|
|
60
|
+
triggerNow(scheduleId: string): Promise<ScheduleExecutionRecord>;
|
|
61
|
+
notifySessionCompleted(sessionId: string, failed: boolean, errorMessage?: string): Promise<void>;
|
|
62
|
+
get scheduleStore(): ScheduleStore;
|
|
63
|
+
private poll;
|
|
64
|
+
private executeSchedule;
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=scheduler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../../src/cron/scheduler.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import type { HubScheduleCreateInput, HubScheduleUpdateInput, ScheduleExecutionRecord, ScheduleExecutionStatus, ScheduleRecord } from "@clinebot/shared";
|
|
2
|
+
export interface HubScheduleStoreOptions {
|
|
3
|
+
sessionsDbPath?: string;
|
|
4
|
+
}
|
|
5
|
+
export interface ScheduleClaimRecord {
|
|
6
|
+
schedule: ScheduleRecord;
|
|
7
|
+
claimToken: string;
|
|
8
|
+
triggeredAt: number;
|
|
9
|
+
leaseUntilAt: number;
|
|
10
|
+
}
|
|
11
|
+
export interface ListSchedulesOptions {
|
|
12
|
+
enabled?: boolean;
|
|
13
|
+
limit?: number;
|
|
14
|
+
tags?: string[];
|
|
15
|
+
}
|
|
16
|
+
export interface ListScheduleExecutionsOptions {
|
|
17
|
+
scheduleId?: string;
|
|
18
|
+
status?: ScheduleExecutionStatus;
|
|
19
|
+
limit?: number;
|
|
20
|
+
}
|
|
21
|
+
export interface ScheduleExecutionStats {
|
|
22
|
+
totalRuns: number;
|
|
23
|
+
successRate: number;
|
|
24
|
+
avgDurationSeconds: number;
|
|
25
|
+
lastFailure?: ScheduleExecutionRecord;
|
|
26
|
+
}
|
|
27
|
+
export declare class SqliteHubScheduleStore {
|
|
28
|
+
private readonly db;
|
|
29
|
+
constructor(options?: HubScheduleStoreOptions);
|
|
30
|
+
close(): void;
|
|
31
|
+
createSchedule(input: HubScheduleCreateInput): ScheduleRecord;
|
|
32
|
+
getSchedule(scheduleId: string): ScheduleRecord | undefined;
|
|
33
|
+
listSchedules(options?: ListSchedulesOptions): ScheduleRecord[];
|
|
34
|
+
updateSchedule(scheduleId: string, updates: HubScheduleUpdateInput): ScheduleRecord | undefined;
|
|
35
|
+
claimDueSchedules(referenceTimeIso: string, leaseDurationMs: number, limit?: number): ScheduleClaimRecord[];
|
|
36
|
+
renewScheduleClaim(scheduleId: string, claimToken: string, leaseUntilAt: string): boolean;
|
|
37
|
+
completeScheduleClaim(scheduleId: string, claimToken: string, triggeredAtIso: string): boolean;
|
|
38
|
+
releaseScheduleClaim(scheduleId: string, claimToken: string): boolean;
|
|
39
|
+
deleteSchedule(scheduleId: string): boolean;
|
|
40
|
+
recordExecution(execution: ScheduleExecutionRecord): void;
|
|
41
|
+
private sessionExists;
|
|
42
|
+
listExecutions(options: ListScheduleExecutionsOptions): ScheduleExecutionRecord[];
|
|
43
|
+
getExecutionStats(scheduleId: string): ScheduleExecutionStats;
|
|
44
|
+
listUpcomingRuns(limit?: number): Array<{
|
|
45
|
+
scheduleId: string;
|
|
46
|
+
name: string;
|
|
47
|
+
nextRunAt: string;
|
|
48
|
+
}>;
|
|
49
|
+
private toScheduleRecord;
|
|
50
|
+
private toScheduleExecutionRecord;
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=sqlite-schedule-store.d.ts.map
|