@clinebot/core 0.0.35 → 0.0.37
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 +1 -2
- package/dist/ClineCore.d.ts +362 -39
- package/dist/ClineCore.d.ts.map +1 -1
- package/dist/account/cline-account-service.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/cron-event-ingress.d.ts +38 -0
- package/dist/cron/cron-event-ingress.d.ts.map +1 -0
- package/dist/cron/cron-materializer.d.ts +36 -0
- package/dist/cron/cron-materializer.d.ts.map +1 -0
- package/dist/cron/cron-reconciler.d.ts +62 -0
- package/dist/cron/cron-reconciler.d.ts.map +1 -0
- package/dist/cron/cron-report-writer.d.ts +41 -0
- package/dist/cron/cron-report-writer.d.ts.map +1 -0
- package/dist/cron/cron-runner.d.ts +43 -0
- package/dist/cron/cron-runner.d.ts.map +1 -0
- package/dist/cron/cron-schema.d.ts +3 -0
- package/dist/cron/cron-schema.d.ts.map +1 -0
- package/dist/cron/cron-service.d.ts +57 -0
- package/dist/cron/cron-service.d.ts.map +1 -0
- package/dist/cron/cron-spec-parser.d.ts +27 -0
- package/dist/cron/cron-spec-parser.d.ts.map +1 -0
- package/dist/cron/cron-watcher.d.ts +23 -0
- package/dist/cron/cron-watcher.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 +68 -0
- package/dist/cron/scheduler.d.ts.map +1 -0
- package/dist/cron/sqlite-cron-store.d.ts +230 -0
- package/dist/cron/sqlite-cron-store.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 +4 -3
- package/dist/extensions/config/agent-config-loader.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 +1 -0
- 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 +15 -2
- package/dist/extensions/plugin/plugin-config-loader.d.ts.map +1 -1
- package/dist/extensions/plugin/plugin-loader.d.ts +13 -7
- 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 +21 -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 +237 -276
- package/dist/extensions/tools/constants.d.ts +1 -0
- package/dist/extensions/tools/constants.d.ts.map +1 -1
- package/dist/extensions/tools/definitions.d.ts +3 -4
- package/dist/extensions/tools/definitions.d.ts.map +1 -1
- package/dist/extensions/tools/executors/apply-patch.d.ts +3 -1
- package/dist/extensions/tools/executors/apply-patch.d.ts.map +1 -1
- package/dist/extensions/tools/executors/editor.d.ts.map +1 -1
- package/dist/extensions/tools/executors/search.d.ts +1 -1
- package/dist/extensions/tools/executors/search.d.ts.map +1 -1
- package/dist/extensions/tools/helpers.d.ts +1 -0
- package/dist/extensions/tools/helpers.d.ts.map +1 -1
- package/dist/extensions/tools/index.d.ts +3 -2
- package/dist/extensions/tools/index.d.ts.map +1 -1
- package/dist/extensions/tools/presets.d.ts +27 -44
- package/dist/extensions/tools/presets.d.ts.map +1 -1
- 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 +25 -3
- package/dist/extensions/tools/schemas.d.ts.map +1 -1
- package/dist/extensions/tools/team/delegated-agent.d.ts +2 -2
- package/dist/extensions/tools/team/delegated-agent.d.ts.map +1 -1
- package/dist/extensions/tools/team/multi-agent.d.ts +7 -3
- package/dist/extensions/tools/team/multi-agent.d.ts.map +1 -1
- package/dist/extensions/tools/team/team-tools.d.ts +1 -0
- package/dist/extensions/tools/team/team-tools.d.ts.map +1 -1
- package/dist/extensions/tools/types.d.ts +0 -5
- package/dist/extensions/tools/types.d.ts.map +1 -1
- package/dist/hooks/hook-bridge.d.ts +118 -0
- package/dist/hooks/hook-bridge.d.ts.map +1 -0
- package/dist/hooks/hook-file-hooks.d.ts +6 -2
- package/dist/hooks/hook-file-hooks.d.ts.map +1 -1
- package/dist/hooks/hook-registry.d.ts +16 -0
- package/dist/hooks/hook-registry.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 +8 -1
- 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 +51 -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 +1305 -0
- package/dist/hub/daemon.d.ts +5 -0
- package/dist/hub/daemon.d.ts.map +1 -0
- package/dist/hub/defaults.d.ts +17 -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 +1294 -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 +104 -0
- package/dist/hub/server.d.ts.map +1 -0
- package/dist/hub/session-client.d.ts +90 -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 +45 -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 +29 -16
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +782 -471
- package/dist/llms/cline-recommended-models.d.ts +20 -0
- package/dist/llms/cline-recommended-models.d.ts.map +1 -0
- package/dist/llms/configured-provider-registry.d.ts +28 -0
- package/dist/llms/configured-provider-registry.d.ts.map +1 -0
- package/dist/llms/handler-factory.d.ts +16 -0
- package/dist/llms/handler-factory.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 +245 -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/agent-config-adapter.d.ts +148 -0
- package/dist/runtime/agent-config-adapter.d.ts.map +1 -0
- package/dist/runtime/agent-runtime-config-builder.d.ts +96 -0
- package/dist/runtime/agent-runtime-config-builder.d.ts.map +1 -0
- package/dist/runtime/history.d.ts +6 -0
- package/dist/runtime/history.d.ts.map +1 -1
- package/dist/runtime/host.d.ts +1 -2
- package/dist/runtime/host.d.ts.map +1 -1
- package/dist/runtime/loop-detection.d.ts +59 -0
- package/dist/runtime/loop-detection.d.ts.map +1 -0
- package/dist/runtime/mistake-tracker.d.ts +69 -0
- package/dist/runtime/mistake-tracker.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-event-adapter.d.ts +102 -0
- package/dist/runtime/runtime-event-adapter.d.ts.map +1 -0
- package/dist/runtime/runtime-host.d.ts +49 -26
- package/dist/runtime/runtime-host.d.ts.map +1 -1
- package/dist/runtime/runtime-oauth-token-manager.d.ts.map +1 -1
- package/dist/runtime/session-runtime-orchestrator.d.ts +261 -0
- package/dist/runtime/session-runtime-orchestrator.d.ts.map +1 -0
- package/dist/runtime/session-runtime.d.ts +16 -21
- package/dist/runtime/session-runtime.d.ts.map +1 -1
- package/dist/runtime/user-input-builder.d.ts +24 -0
- package/dist/runtime/user-input-builder.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/index.js +28 -0
- package/dist/services/local-runtime-bootstrap.d.ts +9 -3
- package/dist/services/local-runtime-bootstrap.d.ts.map +1 -1
- package/dist/services/plugin-tools.d.ts +16 -0
- package/dist/services/plugin-tools.d.ts.map +1 -0
- package/dist/services/providers/local-provider-registry.d.ts +199 -23
- package/dist/services/providers/local-provider-registry.d.ts.map +1 -1
- package/dist/services/providers/local-provider-service.d.ts +15 -13
- package/dist/services/providers/local-provider-service.d.ts.map +1 -1
- package/dist/services/session-data.d.ts +1 -1
- package/dist/services/session-data.d.ts.map +1 -1
- package/dist/services/session-telemetry.d.ts +7 -2
- package/dist/services/session-telemetry.d.ts.map +1 -1
- package/dist/services/storage/file-team-store.d.ts.map +1 -1
- package/dist/services/storage/provider-settings-legacy-migration.d.ts +1 -1
- package/dist/services/storage/provider-settings-legacy-migration.d.ts.map +1 -1
- package/dist/services/storage/provider-settings-manager.d.ts +1 -0
- package/dist/services/storage/provider-settings-manager.d.ts.map +1 -1
- package/dist/services/storage/sqlite-team-store.d.ts.map +1 -1
- package/dist/services/workspace-manifest.d.ts +11 -0
- package/dist/services/workspace-manifest.d.ts.map +1 -1
- package/dist/session/conversation-store.d.ts +30 -0
- package/dist/session/conversation-store.d.ts.map +1 -0
- package/dist/session/message-builder.d.ts +65 -0
- package/dist/session/message-builder.d.ts.map +1 -0
- package/dist/session/persistence-service.d.ts +11 -23
- 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-manifest.d.ts +1 -1
- 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 +2 -102
- package/dist/session/session-service.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 +58 -0
- package/dist/transports/hub.d.ts.map +1 -0
- package/dist/transports/local.d.ts +23 -9
- package/dist/transports/local.d.ts.map +1 -1
- 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 +3 -2
- package/dist/transports/runtime-host-support.d.ts.map +1 -1
- package/dist/types/chat-schema.d.ts +15 -17
- package/dist/types/chat-schema.d.ts.map +1 -1
- package/dist/types/config.d.ts +17 -7
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/events.d.ts +7 -6
- package/dist/types/events.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/types/session.d.ts +7 -3
- package/dist/types/session.d.ts.map +1 -1
- package/dist/types.d.ts +11 -4
- package/dist/types.d.ts.map +1 -1
- package/package.json +20 -6
- package/src/ClineCore.ts +757 -44
- package/src/account/cline-account-service.ts +44 -6
- package/src/account/index.ts +3 -3
- package/src/account/rpc.ts +12 -12
- package/src/cron/cron-event-ingress.ts +357 -0
- package/src/cron/cron-materializer.ts +97 -0
- package/src/cron/cron-reconciler.ts +241 -0
- package/src/cron/cron-report-writer.ts +153 -0
- package/src/cron/cron-runner.ts +495 -0
- package/src/cron/cron-schema.ts +127 -0
- package/src/cron/cron-service.ts +163 -0
- package/src/cron/cron-spec-parser.ts +489 -0
- package/src/cron/cron-watcher.ts +102 -0
- package/src/cron/index.ts +15 -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 +772 -0
- package/src/cron/sqlite-cron-store.ts +1286 -0
- package/src/cron/sqlite-schedule-store.ts +708 -0
- package/src/extensions/config/agent-config-loader.ts +17 -7
- package/src/extensions/config/runtime-commands.ts +6 -0
- package/src/extensions/config/user-instruction-config-loader.ts +1 -0
- 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 +37 -2
- package/src/extensions/plugin/plugin-loader.ts +69 -9
- package/src/extensions/plugin/plugin-module-import.ts +0 -2
- package/src/extensions/plugin/plugin-sandbox-bootstrap.ts +243 -39
- package/src/extensions/plugin/plugin-sandbox.ts +173 -29
- package/src/extensions/plugin/plugin-targeting.ts +32 -0
- package/src/extensions/tools/constants.ts +2 -0
- package/src/extensions/tools/definitions.ts +61 -71
- package/src/extensions/tools/executors/apply-patch.ts +69 -80
- package/src/extensions/tools/executors/editor.ts +4 -3
- package/src/extensions/tools/executors/search.ts +195 -3
- package/src/extensions/tools/helpers.ts +24 -0
- package/src/extensions/tools/index.ts +11 -2
- package/src/extensions/tools/presets.ts +32 -47
- package/src/extensions/tools/runtime.ts +261 -0
- package/src/extensions/tools/schemas.ts +17 -20
- package/src/extensions/tools/team/delegated-agent.ts +8 -3
- package/src/extensions/tools/team/multi-agent.ts +135 -19
- package/src/extensions/tools/team/team-tools.ts +172 -91
- package/src/extensions/tools/types.ts +0 -6
- package/src/hooks/hook-bridge.ts +489 -0
- package/src/hooks/hook-file-hooks.ts +66 -5
- package/src/hooks/hook-registry.ts +257 -0
- package/src/hooks/index.ts +0 -7
- package/src/hooks/subprocess-runner.ts +1 -1
- package/src/hooks/subprocess.ts +9 -0
- package/src/hub/browser-websocket.ts +159 -0
- package/src/hub/client.ts +633 -0
- package/src/hub/connect.ts +156 -0
- package/src/hub/daemon-entry.ts +122 -0
- package/src/hub/daemon.ts +284 -0
- package/src/hub/defaults.ts +70 -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 +141 -0
- package/src/hub/server.ts +2317 -0
- package/src/hub/session-client.ts +502 -0
- package/src/hub/start-shared-server.ts +61 -0
- package/src/hub/transport.ts +14 -0
- package/src/hub/ui-client.ts +126 -0
- package/src/hub/workspace.ts +19 -0
- package/src/index.ts +169 -68
- package/src/llms/cline-recommended-models.ts +167 -0
- package/src/llms/configured-provider-registry.ts +193 -0
- package/src/llms/handler-factory.ts +56 -0
- package/src/llms/provider-defaults.ts +653 -0
- package/src/llms/provider-settings.ts +310 -0
- package/src/llms/runtime-config.ts +43 -0
- package/src/llms/runtime-registry.ts +172 -0
- package/src/llms/runtime-types.ts +121 -0
- package/src/runtime/agent-config-adapter.ts +636 -0
- package/src/runtime/agent-runtime-config-builder.ts +205 -0
- package/src/runtime/error-feedback.ts +142 -0
- package/src/runtime/history.ts +137 -0
- package/src/runtime/host.ts +127 -267
- package/src/runtime/index.ts +1 -0
- package/src/runtime/loop-detection.ts +162 -0
- package/src/runtime/mistake-tracker.ts +221 -0
- package/src/runtime/rules.ts +12 -0
- package/src/runtime/runtime-builder.ts +85 -13
- package/src/runtime/runtime-event-adapter.ts +412 -0
- package/src/runtime/runtime-host.ts +134 -62
- package/src/runtime/runtime-oauth-token-manager.ts +11 -15
- package/src/runtime/session-runtime-orchestrator.ts +1253 -0
- package/src/runtime/session-runtime.ts +16 -26
- package/src/runtime/user-input-builder.ts +167 -0
- package/src/services/global-settings.ts +122 -0
- package/src/services/local-runtime-bootstrap.ts +175 -31
- package/src/services/plugin-tools.ts +86 -0
- package/src/services/providers/local-provider-registry.ts +277 -61
- package/src/services/providers/local-provider-service.ts +109 -44
- package/src/services/session-data.ts +18 -10
- package/src/services/session-telemetry.ts +6 -15
- package/src/services/storage/file-team-store.ts +1 -5
- package/src/services/storage/provider-settings-legacy-migration.ts +14 -51
- package/src/services/storage/provider-settings-manager.ts +17 -2
- package/src/services/storage/sqlite-team-store.ts +1 -5
- package/src/services/workspace-manifest.ts +18 -0
- package/src/session/conversation-store.ts +77 -0
- package/src/session/file-session-service.ts +1 -1
- package/src/session/index.ts +6 -27
- package/src/session/message-builder.ts +941 -0
- package/src/session/persistence-service.ts +119 -504
- package/src/session/session-manifest-store.ts +158 -0
- package/src/session/session-row.ts +199 -0
- package/src/session/session-service.ts +17 -376
- package/src/session/session-team-coordination.ts +1 -1
- package/src/session/subagent-session-manager.ts +397 -0
- package/src/session/team-persistence-store.ts +176 -0
- package/src/transports/hub.ts +1081 -0
- package/src/transports/local.ts +419 -93
- package/src/transports/remote.ts +27 -0
- package/src/transports/runtime-host-support.ts +63 -9
- package/src/types/chat-schema.ts +4 -5
- package/src/types/config.ts +17 -7
- package/src/types/events.ts +8 -6
- package/src/types/index.ts +3 -0
- package/src/types/provider-settings.ts +18 -7
- package/src/types/session.ts +7 -6
- package/src/types.ts +42 -2
- package/dist/hooks/persistent.d.ts +0 -64
- package/dist/hooks/persistent.d.ts.map +0 -1
- package/dist/runtime/rpc-runtime-ensure.d.ts +0 -65
- package/dist/runtime/rpc-runtime-ensure.d.ts.map +0 -1
- package/dist/runtime/rpc-spawn-lease.d.ts +0 -8
- package/dist/runtime/rpc-spawn-lease.d.ts.map +0 -1
- package/dist/services/telemetry/index.js +0 -15
- package/dist/session/rpc-session-service.d.ts +0 -16
- package/dist/session/rpc-session-service.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/transports/rpc.d.ts +0 -51
- package/dist/transports/rpc.d.ts.map +0 -1
- package/src/ClineCore.test.ts +0 -226
- 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 -184
- package/src/extensions/plugin/plugin-loader.test.ts +0 -292
- package/src/extensions/plugin/plugin-sandbox.test.ts +0 -423
- package/src/extensions/tools/definitions.test.ts +0 -780
- package/src/extensions/tools/executors/bash.test.ts +0 -87
- package/src/extensions/tools/executors/editor.test.ts +0 -35
- package/src/extensions/tools/executors/file-read.test.ts +0 -125
- package/src/extensions/tools/model-tool-routing.test.ts +0 -86
- package/src/extensions/tools/presets.test.ts +0 -70
- package/src/extensions/tools/team/multi-agent.lifecycle.test.ts +0 -455
- package/src/extensions/tools/team/spawn-agent-tool.test.ts +0 -381
- package/src/extensions/tools/team/team-tools.test.ts +0 -918
- package/src/hooks/checkpoint-hooks.test.ts +0 -168
- package/src/hooks/hook-file-hooks.test.ts +0 -311
- package/src/hooks/persistent.ts +0 -661
- package/src/runtime/history.test.ts +0 -114
- package/src/runtime/host.test.ts +0 -230
- package/src/runtime/rpc-runtime-ensure.test.ts +0 -123
- package/src/runtime/rpc-runtime-ensure.ts +0 -659
- package/src/runtime/rpc-spawn-lease.test.ts +0 -81
- package/src/runtime/rpc-spawn-lease.ts +0 -156
- package/src/runtime/runtime-builder.team-persistence.test.ts +0 -245
- package/src/runtime/runtime-builder.test.ts +0 -615
- package/src/runtime/runtime-oauth-token-manager.test.ts +0 -137
- package/src/runtime/runtime-parity.test.ts +0 -143
- package/src/services/providers/local-provider-service.test.ts +0 -1062
- package/src/services/session-data.test.ts +0 -160
- package/src/services/storage/provider-settings-legacy-migration.test.ts +0 -424
- package/src/services/storage/provider-settings-manager.test.ts +0 -191
- package/src/services/telemetry/OpenTelemetryAdapter.test.ts +0 -157
- package/src/services/telemetry/OpenTelemetryProvider.test.ts +0 -326
- package/src/services/telemetry/TelemetryLoggerSink.test.ts +0 -42
- package/src/services/telemetry/TelemetryService.test.ts +0 -134
- package/src/services/telemetry/distinct-id.test.ts +0 -57
- package/src/services/workspace/file-indexer.d.ts +0 -11
- package/src/services/workspace/file-indexer.test.ts +0 -156
- package/src/services/workspace/mention-enricher.test.ts +0 -106
- package/src/session/persistence-service.test.ts +0 -300
- package/src/session/rpc-session-service.ts +0 -114
- package/src/session/session-service.team-persistence.test.ts +0 -48
- package/src/session/sqlite-rpc-session-backend.ts +0 -301
- package/src/transports/local.e2e.test.ts +0 -380
- package/src/transports/local.test.ts +0 -2559
- package/src/transports/rpc.test.ts +0 -82
- package/src/transports/rpc.ts +0 -665
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* API-safe message builder for provider payloads.
|
|
3
|
+
*
|
|
4
|
+
* @see PLAN.md §3.1 — moved from `packages/agents/src/context/message-builder.ts`.
|
|
5
|
+
* @see PLAN.md §3.2.3 — public surface of `MessageBuilder`.
|
|
6
|
+
*
|
|
7
|
+
* Verbatim port: walks the conversation to produce provider-ready
|
|
8
|
+
* messages, handles tool-result truncation and outdated-file-content
|
|
9
|
+
* rewrite for compaction. Per-instance caches make this host state.
|
|
10
|
+
*/
|
|
11
|
+
import type * as LlmsProviders from "@clinebot/llms";
|
|
12
|
+
/**
|
|
13
|
+
* Builds an API-safe message copy without mutating original conversation history.
|
|
14
|
+
*/
|
|
15
|
+
export declare class MessageBuilder {
|
|
16
|
+
private readonly maxToolResultChars;
|
|
17
|
+
private readonly targetToolNames;
|
|
18
|
+
private readonly maxTotalTextBytes;
|
|
19
|
+
private indexedMessageCount;
|
|
20
|
+
private indexedTailRef;
|
|
21
|
+
private readonly toolNameByIdCache;
|
|
22
|
+
private readonly readLocatorsByToolUseIdCache;
|
|
23
|
+
private readonly latestReadToolUseByLocatorCache;
|
|
24
|
+
private readonly latestFullContentOwnerByPathCache;
|
|
25
|
+
private readResultLocatorCache;
|
|
26
|
+
constructor(maxToolResultChars?: number, targetToolNames?: Set<string>, maxTotalTextBytes?: number);
|
|
27
|
+
buildForApi(messages: LlmsProviders.Message[]): LlmsProviders.Message[];
|
|
28
|
+
private reindex;
|
|
29
|
+
private resetIndexes;
|
|
30
|
+
private getReadResultRecord;
|
|
31
|
+
private extractLocatorsFromReadToolInput;
|
|
32
|
+
private extractReadLocatorsFromToolResultContent;
|
|
33
|
+
private extractLocatorsFromParsedReadResult;
|
|
34
|
+
private extractLocatorFromReadRequest;
|
|
35
|
+
private extractLocatorFromResultEntry;
|
|
36
|
+
private extractPath;
|
|
37
|
+
private extractLineNumber;
|
|
38
|
+
private parseReadQuery;
|
|
39
|
+
private dedupeReadLocators;
|
|
40
|
+
private toReadLocatorKey;
|
|
41
|
+
private isFullFileRead;
|
|
42
|
+
private isOutdatedReadLocator;
|
|
43
|
+
private toFileBlockOwnerKey;
|
|
44
|
+
private replaceOutdatedReadContent;
|
|
45
|
+
private countOutdatedImageEntries;
|
|
46
|
+
private countOutdatedImageEntriesInParsed;
|
|
47
|
+
private countOutdatedImageEntriesInEntry;
|
|
48
|
+
private isImageReadSummaryEntry;
|
|
49
|
+
private replaceOutdatedReadContentInString;
|
|
50
|
+
private replaceOutdatedReadContentInParsed;
|
|
51
|
+
private replaceOutdatedReadEntry;
|
|
52
|
+
private isReadTool;
|
|
53
|
+
private shouldTruncateTool;
|
|
54
|
+
private truncateToolResultContent;
|
|
55
|
+
private truncateMiddle;
|
|
56
|
+
private truncateToTotalTextBudget;
|
|
57
|
+
private countMessageTextBytes;
|
|
58
|
+
private countToolResultTextBytes;
|
|
59
|
+
private collectTruncationCandidates;
|
|
60
|
+
private truncateMiddleToLength;
|
|
61
|
+
private truncateMiddleToBytes;
|
|
62
|
+
private utf8ByteLength;
|
|
63
|
+
private cloneContentBlockForMutation;
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=message-builder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"message-builder.d.ts","sourceRoot":"","sources":["../../src/session/message-builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,KAAK,aAAa,MAAM,gBAAgB,CAAC;AA4BrD;;GAEG;AACH,qBAAa,cAAc;IAgBzB,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAjBnC,OAAO,CAAC,mBAAmB,CAAK;IAChC,OAAO,CAAC,cAAc,CAAoC;IAC1D,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA6B;IAC/D,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAGzC;IACJ,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAA6B;IAC7E,OAAO,CAAC,QAAQ,CAAC,iCAAiC,CAG9C;IACJ,OAAO,CAAC,sBAAsB,CAAwC;gBAGpD,kBAAkB,SAAgC,EAClD,eAAe,cAAoB,EACnC,iBAAiB,SAA+B;IAGlE,WAAW,CAAC,QAAQ,EAAE,aAAa,CAAC,OAAO,EAAE,GAAG,aAAa,CAAC,OAAO,EAAE;IAoGvE,OAAO,CAAC,OAAO;IAsEf,OAAO,CAAC,YAAY;IAUpB,OAAO,CAAC,mBAAmB;IAwB3B,OAAO,CAAC,gCAAgC;IAsCxC,OAAO,CAAC,wCAAwC;IA2BhD,OAAO,CAAC,mCAAmC;IAa3C,OAAO,CAAC,6BAA6B;IAoBrC,OAAO,CAAC,6BAA6B;IAwBrC,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,qBAAqB;IAmB7B,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,0BAA0B;IA0ElC,OAAO,CAAC,yBAAyB;IAejC,OAAO,CAAC,iCAAiC;IAgBzC,OAAO,CAAC,gCAAgC;IAsBxC,OAAO,CAAC,uBAAuB;IAO/B,OAAO,CAAC,kCAAkC;IAgB1C,OAAO,CAAC,kCAAkC;IAa1C,OAAO,CAAC,wBAAwB;IA6BhC,OAAO,CAAC,UAAU;IAOlB,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,yBAAyB;IAmCjC,OAAO,CAAC,cAAc;IA0BtB,OAAO,CAAC,yBAAyB;IAiDjC,OAAO,CAAC,qBAAqB;IAsB7B,OAAO,CAAC,wBAAwB;IAiBhC,OAAO,CAAC,2BAA2B;IA4DnC,OAAO,CAAC,sBAAsB;IA0B9B,OAAO,CAAC,qBAAqB;IAqB7B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,4BAA4B;CAYpC"}
|
|
@@ -2,36 +2,25 @@ import type * as LlmsProviders from "@clinebot/llms";
|
|
|
2
2
|
import type { AgentResult } from "@clinebot/shared";
|
|
3
3
|
import type { SubAgentEndContext, SubAgentStartContext } from "../extensions/tools/team";
|
|
4
4
|
import type { HookEventPayload } from "../hooks";
|
|
5
|
-
import {
|
|
6
|
-
import { type SessionStatus } from "../types/common";
|
|
5
|
+
import type { SessionStatus } from "../types/common";
|
|
7
6
|
import type { PersistedSessionUpdateInput, SessionMessagesArtifactUploader, SessionPersistenceAdapter } from "../types/session";
|
|
8
|
-
import {
|
|
9
|
-
import type { CreateRootSessionWithArtifactsInput, RootSessionArtifacts, SessionRow, UpsertSubagentInput } from "./session-service";
|
|
7
|
+
import type { SessionRow } from "./session-row";
|
|
10
8
|
export type { PersistedSessionUpdateInput, SessionPersistenceAdapter };
|
|
11
9
|
export declare class UnifiedSessionPersistenceService {
|
|
12
10
|
private readonly adapter;
|
|
13
|
-
private readonly
|
|
14
|
-
private readonly
|
|
15
|
-
private readonly teamTaskLastProgressLineBySession;
|
|
16
|
-
protected readonly artifacts: SessionArtifacts;
|
|
17
|
-
private readonly messagesArtifactUploader?;
|
|
11
|
+
private readonly manifestStore;
|
|
12
|
+
private readonly subagents;
|
|
18
13
|
private static readonly STALE_REASON;
|
|
19
14
|
private static readonly STALE_SOURCE;
|
|
20
15
|
private static readonly TEAM_HEARTBEAT_LOG_INTERVAL_MS;
|
|
21
16
|
constructor(adapter: SessionPersistenceAdapter, options?: {
|
|
22
17
|
messagesArtifactUploader?: SessionMessagesArtifactUploader;
|
|
23
18
|
});
|
|
24
|
-
ensureSessionsDir(): string;
|
|
25
|
-
private initializeMessagesFile;
|
|
26
19
|
private toPersistedMessages;
|
|
27
|
-
|
|
28
|
-
writeSessionManifest(manifestPath: string, manifest: SessionManifest): void;
|
|
29
|
-
readSessionManifest(sessionId: string): SessionManifest | undefined;
|
|
30
|
-
|
|
31
|
-
private resolveArtifactPath;
|
|
32
|
-
private teamTaskQueueKey;
|
|
33
|
-
private activeTeamTaskSessionId;
|
|
34
|
-
createRootSessionWithArtifacts(input: CreateRootSessionWithArtifactsInput): Promise<RootSessionArtifacts>;
|
|
20
|
+
ensureSessionsDir(): string;
|
|
21
|
+
writeSessionManifest(manifestPath: string, manifest: import("./session-manifest").SessionManifest): void;
|
|
22
|
+
readSessionManifest(sessionId: string): import("./session-manifest").SessionManifest | undefined;
|
|
23
|
+
createRootSessionWithArtifacts(input: import("./session-row").CreateRootSessionWithArtifactsInput): Promise<import("./session-row").RootSessionArtifacts>;
|
|
35
24
|
updateSessionStatus(sessionId: string, status: SessionStatus, exitCode?: number | null): Promise<{
|
|
36
25
|
updated: boolean;
|
|
37
26
|
endedAt?: string;
|
|
@@ -45,16 +34,15 @@ export declare class UnifiedSessionPersistenceService {
|
|
|
45
34
|
updated: boolean;
|
|
46
35
|
}>;
|
|
47
36
|
queueSpawnRequest(event: HookEventPayload): Promise<void>;
|
|
48
|
-
|
|
49
|
-
upsertSubagentSession(input: UpsertSubagentInput): Promise<string | undefined>;
|
|
37
|
+
upsertSubagentSession(input: import("./session-row").UpsertSubagentInput): Promise<string | undefined>;
|
|
50
38
|
upsertSubagentSessionFromHook(event: HookEventPayload): Promise<string | undefined>;
|
|
51
|
-
appendSubagentHookAudit(
|
|
39
|
+
appendSubagentHookAudit(_subSessionId: string, event: HookEventPayload): Promise<void>;
|
|
52
40
|
persistSessionMessages(sessionId: string, messages: LlmsProviders.Message[], systemPrompt?: string): Promise<void>;
|
|
53
41
|
applySubagentStatus(subSessionId: string, event: HookEventPayload): Promise<void>;
|
|
54
42
|
applySubagentStatusBySessionId(subSessionId: string, status: SessionStatus): Promise<void>;
|
|
55
43
|
applyStatusToRunningChildSessions(parentSessionId: string, status: Exclude<SessionStatus, "running">): Promise<void>;
|
|
56
44
|
onTeamTaskStart(rootSessionId: string, agentId: string, message: string): Promise<void>;
|
|
57
|
-
onTeamTaskEnd(rootSessionId: string, agentId: string, status: SessionStatus,
|
|
45
|
+
onTeamTaskEnd(rootSessionId: string, agentId: string, status: SessionStatus, summary?: string, result?: AgentResult, messages?: LlmsProviders.Message[]): Promise<void>;
|
|
58
46
|
onTeamTaskProgress(rootSessionId: string, agentId: string, progress: string, options?: {
|
|
59
47
|
kind?: "heartbeat" | "progress" | "text";
|
|
60
48
|
}): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"persistence-service.d.ts","sourceRoot":"","sources":["../../src/session/persistence-service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"persistence-service.d.ts","sourceRoot":"","sources":["../../src/session/persistence-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type * as LlmsProviders from "@clinebot/llms";
|
|
2
|
+
import { SessionArtifacts } from "../services/session-artifacts";
|
|
3
|
+
import type { SessionMessagesArtifactUploader, SessionPersistenceAdapter } from "../types/session";
|
|
4
|
+
import { type SessionManifest } from "./session-manifest";
|
|
5
|
+
export declare class SessionManifestStore {
|
|
6
|
+
private readonly adapter;
|
|
7
|
+
private readonly messagesArtifactUploader?;
|
|
8
|
+
readonly artifacts: SessionArtifacts;
|
|
9
|
+
constructor(adapter: SessionPersistenceAdapter, messagesArtifactUploader?: SessionMessagesArtifactUploader | undefined);
|
|
10
|
+
ensureSessionsDir(): string;
|
|
11
|
+
initializeMessagesFile(sessionId: string, path: string, startedAt: string): void;
|
|
12
|
+
writeSessionManifest(manifestPath: string, manifest: SessionManifest): void;
|
|
13
|
+
readSessionManifest(sessionId: string): SessionManifest | undefined;
|
|
14
|
+
readManifestFile(sessionId: string): {
|
|
15
|
+
path: string;
|
|
16
|
+
manifest?: SessionManifest;
|
|
17
|
+
};
|
|
18
|
+
resolveArtifactPath(sessionId: string, kind: "messagesPath", fallback: (id: string) => string): Promise<string>;
|
|
19
|
+
persistSessionMessages(sessionId: string, messages: LlmsProviders.Message[], systemPrompt?: string): Promise<void>;
|
|
20
|
+
appendStaleSessionHookLog(detectedAt: string, sessionId: string, pid: number, reason: string, source: string): void;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=session-manifest-store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-manifest-store.d.ts","sourceRoot":"","sources":["../../src/session/session-manifest-store.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,KAAK,aAAa,MAAM,gBAAgB,CAAC;AAErD,OAAO,EAAU,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAMzE,OAAO,KAAK,EACX,+BAA+B,EAC/B,yBAAyB,EAEzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACN,KAAK,eAAe,EAEpB,MAAM,oBAAoB,CAAC;AAE5B,qBAAa,oBAAoB;IAI/B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IAJ3C,QAAQ,CAAC,SAAS,EAAE,gBAAgB,CAAC;gBAGnB,OAAO,EAAE,yBAAyB,EAClC,wBAAwB,CAAC,EAAE,+BAA+B,YAAA;IAK5E,iBAAiB,IAAI,MAAM;IAI3B,sBAAsB,CACrB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,GACf,IAAI;IAQP,oBAAoB,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI;IAS3E,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAInE,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG;QACpC,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,eAAe,CAAC;KAC3B;IAiBK,mBAAmB,CACxB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,cAAc,EACpB,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,GAC9B,OAAO,CAAC,MAAM,CAAC;IAQZ,sBAAsB,CAC3B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,aAAa,CAAC,OAAO,EAAE,EACjC,YAAY,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;IAkChB,yBAAyB,CACxB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACZ,IAAI;CAgBP"}
|
|
@@ -8,8 +8,8 @@ export declare const SessionManifestSchema: z.ZodObject<{
|
|
|
8
8
|
ended_at: z.ZodOptional<z.ZodString>;
|
|
9
9
|
exit_code: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
10
10
|
status: z.ZodEnum<{
|
|
11
|
-
completed: "completed";
|
|
12
11
|
running: "running";
|
|
12
|
+
completed: "completed";
|
|
13
13
|
failed: "failed";
|
|
14
14
|
cancelled: "cancelled";
|
|
15
15
|
}>;
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import type { TeamTeammateSpec } from "@clinebot/shared";
|
|
2
|
+
import type { AgentTeamsRuntime } from "../extensions/tools/team";
|
|
3
|
+
import type { SessionSource, SessionStatus } from "../types/common";
|
|
4
|
+
import type { SessionManifest } from "./session-manifest";
|
|
5
|
+
export interface SessionRow {
|
|
6
|
+
sessionId: string;
|
|
7
|
+
source: string;
|
|
8
|
+
pid: number;
|
|
9
|
+
startedAt: string;
|
|
10
|
+
endedAt?: string | null;
|
|
11
|
+
exitCode?: number | null;
|
|
12
|
+
status: SessionStatus;
|
|
13
|
+
statusLock: number;
|
|
14
|
+
interactive: boolean;
|
|
15
|
+
provider: string;
|
|
16
|
+
model: string;
|
|
17
|
+
cwd: string;
|
|
18
|
+
workspaceRoot: string;
|
|
19
|
+
teamName?: string | null;
|
|
20
|
+
enableTools: boolean;
|
|
21
|
+
enableSpawn: boolean;
|
|
22
|
+
enableTeams: boolean;
|
|
23
|
+
parentSessionId?: string | null;
|
|
24
|
+
parentAgentId?: string | null;
|
|
25
|
+
agentId?: string | null;
|
|
26
|
+
conversationId?: string | null;
|
|
27
|
+
isSubagent: boolean;
|
|
28
|
+
prompt?: string | null;
|
|
29
|
+
metadata?: Record<string, unknown> | null;
|
|
30
|
+
hookPath?: string;
|
|
31
|
+
messagesPath?: string | null;
|
|
32
|
+
updatedAt: string;
|
|
33
|
+
}
|
|
34
|
+
export interface CreateRootSessionInput {
|
|
35
|
+
sessionId: string;
|
|
36
|
+
source: SessionSource;
|
|
37
|
+
pid: number;
|
|
38
|
+
startedAt: string;
|
|
39
|
+
interactive: boolean;
|
|
40
|
+
provider: string;
|
|
41
|
+
model: string;
|
|
42
|
+
cwd: string;
|
|
43
|
+
workspaceRoot: string;
|
|
44
|
+
teamName?: string;
|
|
45
|
+
enableTools: boolean;
|
|
46
|
+
enableSpawn: boolean;
|
|
47
|
+
enableTeams: boolean;
|
|
48
|
+
prompt?: string;
|
|
49
|
+
metadata?: Record<string, unknown>;
|
|
50
|
+
messagesPath: string;
|
|
51
|
+
}
|
|
52
|
+
export interface CreateRootSessionWithArtifactsInput {
|
|
53
|
+
sessionId: string;
|
|
54
|
+
source: SessionSource;
|
|
55
|
+
pid: number;
|
|
56
|
+
interactive: boolean;
|
|
57
|
+
provider: string;
|
|
58
|
+
model: string;
|
|
59
|
+
cwd: string;
|
|
60
|
+
workspaceRoot: string;
|
|
61
|
+
teamName?: string;
|
|
62
|
+
enableTools: boolean;
|
|
63
|
+
enableSpawn: boolean;
|
|
64
|
+
enableTeams: boolean;
|
|
65
|
+
prompt?: string;
|
|
66
|
+
metadata?: Record<string, unknown>;
|
|
67
|
+
startedAt?: string;
|
|
68
|
+
}
|
|
69
|
+
export interface RootSessionArtifacts {
|
|
70
|
+
manifestPath: string;
|
|
71
|
+
messagesPath: string;
|
|
72
|
+
manifest: SessionManifest;
|
|
73
|
+
}
|
|
74
|
+
export interface UpsertSubagentInput {
|
|
75
|
+
agentId: string;
|
|
76
|
+
parentAgentId: string;
|
|
77
|
+
conversationId: string;
|
|
78
|
+
prompt?: string;
|
|
79
|
+
rootSessionId?: string;
|
|
80
|
+
}
|
|
81
|
+
/** SELECT clause that aliases snake_case columns to camelCase SessionRow keys. */
|
|
82
|
+
export declare const SESSION_SELECT_COLUMNS = "\n\tsession_id AS sessionId,\n\tsource,\n\tpid,\n\tstarted_at AS startedAt,\n\tended_at AS endedAt,\n\texit_code AS exitCode,\n\tstatus,\n\tstatus_lock AS statusLock,\n\tinteractive,\n\tprovider,\n\tmodel,\n\tcwd,\n\tworkspace_root AS workspaceRoot,\n\tteam_name AS teamName,\n\tenable_tools AS enableTools,\n\tenable_spawn AS enableSpawn,\n\tenable_teams AS enableTeams,\n\tparent_session_id AS parentSessionId,\n\tparent_agent_id AS parentAgentId,\n\tagent_id AS agentId,\n\tconversation_id AS conversationId,\n\tis_subagent AS isSubagent,\n\tprompt,\n\tmetadata_json AS metadata,\n\thook_path AS hookPath,\n\tmessages_path AS messagesPath,\n\tupdated_at AS updatedAt";
|
|
83
|
+
export declare function patchSqliteRow(raw: Record<string, unknown>): SessionRow;
|
|
84
|
+
export declare function stringifyMetadata(metadata: Record<string, unknown> | null | undefined): string | null;
|
|
85
|
+
export type TeamRuntimeState = ReturnType<AgentTeamsRuntime["exportState"]>;
|
|
86
|
+
export interface PersistedTeamEnvelope {
|
|
87
|
+
version: 1;
|
|
88
|
+
updatedAt: string;
|
|
89
|
+
teamState: TeamRuntimeState;
|
|
90
|
+
teammates: TeamTeammateSpec[];
|
|
91
|
+
}
|
|
92
|
+
export declare function reviveTeamStateDates(state: TeamRuntimeState): TeamRuntimeState;
|
|
93
|
+
//# sourceMappingURL=session-row.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-row.d.ts","sourceRoot":"","sources":["../../src/session/session-row.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D,MAAM,WAAW,UAAU;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,aAAa,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,sBAAsB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,aAAa,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,YAAY,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,mCAAmC;IACnD,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,aAAa,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,eAAe,CAAC;CAC1B;AAED,MAAM,WAAW,mBAAmB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,kFAAkF;AAClF,eAAO,MAAM,sBAAsB,utBA2BL,CAAC;AAE/B,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,UAAU,CAqBvE;AAED,wBAAgB,iBAAiB,CAChC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,GAClD,MAAM,GAAG,IAAI,CAGf;AAED,MAAM,MAAM,gBAAgB,GAAG,UAAU,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC,CAAC;AAE5E,MAAM,WAAW,qBAAqB;IACrC,OAAO,EAAE,CAAC,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,gBAAgB,CAAC;IAC5B,SAAS,EAAE,gBAAgB,EAAE,CAAC;CAC9B;AAED,wBAAgB,oBAAoB,CACnC,KAAK,EAAE,gBAAgB,GACrB,gBAAgB,CAyClB"}
|
|
@@ -1,107 +1,7 @@
|
|
|
1
|
-
import type { TeamTeammateSpec } from "@clinebot/shared";
|
|
2
|
-
import type { AgentTeamsRuntime, TeamEvent } from "../extensions/tools/team";
|
|
3
1
|
import type { SqliteSessionStore } from "../services/storage/sqlite-session-store";
|
|
4
|
-
import type { SessionSource, SessionStatus } from "../types/common";
|
|
5
2
|
import type { SessionMessagesArtifactUploader } from "../types/session";
|
|
6
3
|
import { UnifiedSessionPersistenceService } from "./persistence-service";
|
|
7
|
-
import type
|
|
8
|
-
export interface SessionRow {
|
|
9
|
-
sessionId: string;
|
|
10
|
-
source: string;
|
|
11
|
-
pid: number;
|
|
12
|
-
startedAt: string;
|
|
13
|
-
endedAt?: string | null;
|
|
14
|
-
exitCode?: number | null;
|
|
15
|
-
status: SessionStatus;
|
|
16
|
-
statusLock: number;
|
|
17
|
-
interactive: boolean;
|
|
18
|
-
provider: string;
|
|
19
|
-
model: string;
|
|
20
|
-
cwd: string;
|
|
21
|
-
workspaceRoot: string;
|
|
22
|
-
teamName?: string | null;
|
|
23
|
-
enableTools: boolean;
|
|
24
|
-
enableSpawn: boolean;
|
|
25
|
-
enableTeams: boolean;
|
|
26
|
-
parentSessionId?: string | null;
|
|
27
|
-
parentAgentId?: string | null;
|
|
28
|
-
agentId?: string | null;
|
|
29
|
-
conversationId?: string | null;
|
|
30
|
-
isSubagent: boolean;
|
|
31
|
-
prompt?: string | null;
|
|
32
|
-
metadata?: Record<string, unknown> | null;
|
|
33
|
-
hookPath?: string;
|
|
34
|
-
messagesPath?: string | null;
|
|
35
|
-
updatedAt: string;
|
|
36
|
-
}
|
|
37
|
-
export interface CreateRootSessionInput {
|
|
38
|
-
sessionId: string;
|
|
39
|
-
source: SessionSource;
|
|
40
|
-
pid: number;
|
|
41
|
-
startedAt: string;
|
|
42
|
-
interactive: boolean;
|
|
43
|
-
provider: string;
|
|
44
|
-
model: string;
|
|
45
|
-
cwd: string;
|
|
46
|
-
workspaceRoot: string;
|
|
47
|
-
teamName?: string;
|
|
48
|
-
enableTools: boolean;
|
|
49
|
-
enableSpawn: boolean;
|
|
50
|
-
enableTeams: boolean;
|
|
51
|
-
prompt?: string;
|
|
52
|
-
metadata?: Record<string, unknown>;
|
|
53
|
-
messagesPath: string;
|
|
54
|
-
}
|
|
55
|
-
export interface CreateRootSessionWithArtifactsInput {
|
|
56
|
-
sessionId: string;
|
|
57
|
-
source: SessionSource;
|
|
58
|
-
pid: number;
|
|
59
|
-
interactive: boolean;
|
|
60
|
-
provider: string;
|
|
61
|
-
model: string;
|
|
62
|
-
cwd: string;
|
|
63
|
-
workspaceRoot: string;
|
|
64
|
-
teamName?: string;
|
|
65
|
-
enableTools: boolean;
|
|
66
|
-
enableSpawn: boolean;
|
|
67
|
-
enableTeams: boolean;
|
|
68
|
-
prompt?: string;
|
|
69
|
-
metadata?: Record<string, unknown>;
|
|
70
|
-
startedAt?: string;
|
|
71
|
-
}
|
|
72
|
-
export interface RootSessionArtifacts {
|
|
73
|
-
manifestPath: string;
|
|
74
|
-
messagesPath: string;
|
|
75
|
-
manifest: SessionManifest;
|
|
76
|
-
}
|
|
77
|
-
export interface UpsertSubagentInput {
|
|
78
|
-
agentId: string;
|
|
79
|
-
parentAgentId: string;
|
|
80
|
-
conversationId: string;
|
|
81
|
-
prompt?: string;
|
|
82
|
-
rootSessionId?: string;
|
|
83
|
-
}
|
|
84
|
-
type TeamRuntimeState = ReturnType<AgentTeamsRuntime["exportState"]>;
|
|
85
|
-
export interface FileTeamPersistenceStoreOptions {
|
|
86
|
-
teamName: string;
|
|
87
|
-
baseDir?: string;
|
|
88
|
-
}
|
|
89
|
-
export declare class FileTeamPersistenceStore {
|
|
90
|
-
private readonly dirPath;
|
|
91
|
-
private readonly statePath;
|
|
92
|
-
private readonly taskHistoryPath;
|
|
93
|
-
private readonly teammateSpecs;
|
|
94
|
-
constructor(options: FileTeamPersistenceStoreOptions);
|
|
95
|
-
loadState(): TeamRuntimeState | undefined;
|
|
96
|
-
getTeammateSpecs(): TeamTeammateSpec[];
|
|
97
|
-
upsertTeammateSpec(spec: TeamTeammateSpec): void;
|
|
98
|
-
removeTeammateSpec(agentId: string): void;
|
|
99
|
-
persist(runtime: AgentTeamsRuntime): void;
|
|
100
|
-
appendTaskHistory(event: TeamEvent): void;
|
|
101
|
-
private ensureDir;
|
|
102
|
-
private hasPersistableState;
|
|
103
|
-
private clearPersistedState;
|
|
104
|
-
}
|
|
4
|
+
import { type CreateRootSessionInput } from "./session-row";
|
|
105
5
|
export declare class CoreSessionService extends UnifiedSessionPersistenceService {
|
|
106
6
|
private readonly store;
|
|
107
7
|
constructor(store: SqliteSessionStore, options?: {
|
|
@@ -110,5 +10,5 @@ export declare class CoreSessionService extends UnifiedSessionPersistenceService
|
|
|
110
10
|
});
|
|
111
11
|
createRootSession(input: CreateRootSessionInput): void;
|
|
112
12
|
}
|
|
113
|
-
export {};
|
|
13
|
+
export type { CreateRootSessionInput, CreateRootSessionWithArtifactsInput, RootSessionArtifacts, SessionRow, UpsertSubagentInput, } from "./session-row";
|
|
114
14
|
//# sourceMappingURL=session-service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-service.d.ts","sourceRoot":"","sources":["../../src/session/session-service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"session-service.d.ts","sourceRoot":"","sources":["../../src/session/session-service.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,kBAAkB,CAAC;AAKxE,OAAO,EAAE,gCAAgC,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EACN,KAAK,sBAAsB,EAK3B,MAAM,eAAe,CAAC;AAqPvB,qBAAa,kBAAmB,SAAQ,gCAAgC;IAEtE,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,EAAE,kBAAkB,EAC1C,OAAO,GAAE;QACR,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,wBAAwB,CAAC,EAAE,+BAA+B,CAAC;KACtD;IAQP,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,IAAI;CAwCtD;AAED,YAAY,EACX,sBAAsB,EACtB,mCAAmC,EACnC,oBAAoB,EACpB,UAAU,EACV,mBAAmB,GACnB,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type * as LlmsProviders from "@clinebot/llms";
|
|
2
|
+
import type { AgentResult } from "@clinebot/shared";
|
|
3
|
+
import type { SubAgentEndContext, SubAgentStartContext } from "../extensions/tools/team";
|
|
4
|
+
import type { HookEventPayload } from "../hooks";
|
|
5
|
+
import type { SessionStatus } from "../types/common";
|
|
6
|
+
import type { SessionPersistenceAdapter, StoredMessageWithMetadata } from "../types/session";
|
|
7
|
+
import type { SessionManifestStore } from "./session-manifest-store";
|
|
8
|
+
import type { UpsertSubagentInput } from "./session-row";
|
|
9
|
+
export declare class SubagentSessionManager {
|
|
10
|
+
private readonly adapter;
|
|
11
|
+
private readonly manifestStore;
|
|
12
|
+
private readonly toPersistedMessages;
|
|
13
|
+
private readonly heartbeatLogIntervalMs;
|
|
14
|
+
private readonly teamTaskSessionsByAgent;
|
|
15
|
+
private readonly teamTaskLastHeartbeatBySession;
|
|
16
|
+
private readonly teamTaskLastProgressLineBySession;
|
|
17
|
+
constructor(adapter: SessionPersistenceAdapter, manifestStore: SessionManifestStore, toPersistedMessages: (messages: LlmsProviders.Message[] | undefined, result?: AgentResult, previousMessages?: LlmsProviders.Message[]) => StoredMessageWithMetadata[] | undefined, heartbeatLogIntervalMs: number);
|
|
18
|
+
private teamTaskQueueKey;
|
|
19
|
+
private activeTeamTaskSessionId;
|
|
20
|
+
private buildSubsessionRow;
|
|
21
|
+
queueSpawnRequest(event: HookEventPayload): Promise<void>;
|
|
22
|
+
upsertSubagentSession(input: UpsertSubagentInput): Promise<string | undefined>;
|
|
23
|
+
upsertSubagentSessionFromHook(event: HookEventPayload): Promise<string | undefined>;
|
|
24
|
+
applySubagentStatus(subSessionId: string, event: HookEventPayload): Promise<void>;
|
|
25
|
+
applySubagentStatusBySessionId(subSessionId: string, status: SessionStatus): Promise<void>;
|
|
26
|
+
applyStatusToRunningChildSessions(parentSessionId: string, status: Exclude<SessionStatus, "running">): Promise<void>;
|
|
27
|
+
onTeamTaskStart(rootSessionId: string, agentId: string, message: string): Promise<void>;
|
|
28
|
+
onTeamTaskEnd(rootSessionId: string, agentId: string, status: SessionStatus, _summary?: string, result?: AgentResult, messages?: LlmsProviders.Message[]): Promise<void>;
|
|
29
|
+
onTeamTaskProgress(rootSessionId: string, agentId: string, progress: string, options?: {
|
|
30
|
+
kind?: "heartbeat" | "progress" | "text";
|
|
31
|
+
}): Promise<void>;
|
|
32
|
+
handleSubAgentStart(rootSessionId: string, context: SubAgentStartContext): Promise<void>;
|
|
33
|
+
handleSubAgentEnd(rootSessionId: string, context: SubAgentEndContext): Promise<void>;
|
|
34
|
+
appendSubagentHookAudit(event: HookEventPayload): void;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=subagent-session-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subagent-session-manager.d.ts","sourceRoot":"","sources":["../../src/session/subagent-session-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { TeamTeammateSpec } from "@clinebot/shared";
|
|
2
|
+
import type { AgentTeamsRuntime, TeamEvent } from "../extensions/tools/team";
|
|
3
|
+
import { type TeamRuntimeState } from "./session-row";
|
|
4
|
+
export interface FileTeamPersistenceStoreOptions {
|
|
5
|
+
teamName: string;
|
|
6
|
+
baseDir?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare class FileTeamPersistenceStore {
|
|
9
|
+
private readonly dirPath;
|
|
10
|
+
private readonly statePath;
|
|
11
|
+
private readonly taskHistoryPath;
|
|
12
|
+
private readonly teammateSpecs;
|
|
13
|
+
constructor(options: FileTeamPersistenceStoreOptions);
|
|
14
|
+
loadState(): TeamRuntimeState | undefined;
|
|
15
|
+
getTeammateSpecs(): TeamTeammateSpec[];
|
|
16
|
+
upsertTeammateSpec(spec: TeamTeammateSpec): void;
|
|
17
|
+
removeTeammateSpec(agentId: string): void;
|
|
18
|
+
persist(runtime: AgentTeamsRuntime): void;
|
|
19
|
+
appendTaskHistory(event: TeamEvent): void;
|
|
20
|
+
private ensureDir;
|
|
21
|
+
private hasPersistableState;
|
|
22
|
+
private clearPersistedState;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=team-persistence-store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"team-persistence-store.d.ts","sourceRoot":"","sources":["../../src/session/team-persistence-store.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAGN,KAAK,gBAAgB,EACrB,MAAM,eAAe,CAAC;AASvB,MAAM,WAAW,+BAA+B;IAC/C,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,wBAAwB;IACpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA4C;gBAE9D,OAAO,EAAE,+BAA+B;IAQpD,SAAS,IAAI,gBAAgB,GAAG,SAAS;IAmBzC,gBAAgB,IAAI,gBAAgB,EAAE;IAItC,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI;IAIhD,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIzC,OAAO,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAiBzC,iBAAiB,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAwDzC,OAAO,CAAC,SAAS;IAMjB,OAAO,CAAC,mBAAmB;IAe3B,OAAO,CAAC,mBAAmB;CAK3B"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import type { AgentResult, ToolApprovalRequest, ToolApprovalResult } from "@clinebot/shared";
|
|
2
|
+
import type { HookEventPayload } from "../hooks";
|
|
3
|
+
import type { PendingPromptMutationResult, PendingPromptsDeleteInput, PendingPromptsListInput, PendingPromptsUpdateInput, RuntimeHost, RuntimeHostSubscribeOptions, SendSessionInput, SessionAccumulatedUsage, StartSessionInput, StartSessionResult } from "../runtime/runtime-host";
|
|
4
|
+
import type { CoreSessionEvent, SessionPendingPrompt } from "../types/events";
|
|
5
|
+
import type { SessionRecord } from "../types/sessions";
|
|
6
|
+
export interface HubRuntimeHostOptions {
|
|
7
|
+
url: string;
|
|
8
|
+
authToken?: string;
|
|
9
|
+
clientType?: string;
|
|
10
|
+
displayName?: string;
|
|
11
|
+
requestToolApproval?: (request: ToolApprovalRequest) => Promise<ToolApprovalResult> | ToolApprovalResult;
|
|
12
|
+
}
|
|
13
|
+
export declare class HubRuntimeHost implements RuntimeHost {
|
|
14
|
+
readonly runtimeAddress: string;
|
|
15
|
+
private readonly client;
|
|
16
|
+
private readonly events;
|
|
17
|
+
private readonly sessionToolExecutors;
|
|
18
|
+
private readonly sessionSubscriptions;
|
|
19
|
+
private readonly pendingApprovalToolCallIds;
|
|
20
|
+
private readonly requestToolApproval;
|
|
21
|
+
constructor(options: HubRuntimeHostOptions, clientContext?: {
|
|
22
|
+
workspaceRoot?: string;
|
|
23
|
+
cwd?: string;
|
|
24
|
+
});
|
|
25
|
+
connect(): Promise<void>;
|
|
26
|
+
start(input: StartSessionInput): Promise<StartSessionResult>;
|
|
27
|
+
send(input: SendSessionInput): Promise<AgentResult | undefined>;
|
|
28
|
+
pendingPrompts(action: "list", input: PendingPromptsListInput): Promise<SessionPendingPrompt[]>;
|
|
29
|
+
pendingPrompts(action: "update", input: PendingPromptsUpdateInput): Promise<PendingPromptMutationResult>;
|
|
30
|
+
pendingPrompts(action: "delete", input: PendingPromptsDeleteInput): Promise<PendingPromptMutationResult>;
|
|
31
|
+
private listPendingPromptEntries;
|
|
32
|
+
private editPendingPromptEntry;
|
|
33
|
+
private deletePendingPromptEntry;
|
|
34
|
+
getAccumulatedUsage(sessionId: string): Promise<SessionAccumulatedUsage | undefined>;
|
|
35
|
+
abort(sessionId: string, reason?: unknown): Promise<void>;
|
|
36
|
+
stop(sessionId: string): Promise<void>;
|
|
37
|
+
dispose(): Promise<void>;
|
|
38
|
+
get(sessionId: string): Promise<SessionRecord | undefined>;
|
|
39
|
+
list(limit?: number): Promise<SessionRecord[]>;
|
|
40
|
+
delete(sessionId: string): Promise<boolean>;
|
|
41
|
+
update(sessionId: string, updates: {
|
|
42
|
+
prompt?: string | null;
|
|
43
|
+
metadata?: Record<string, unknown> | null;
|
|
44
|
+
title?: string | null;
|
|
45
|
+
}): Promise<{
|
|
46
|
+
updated: boolean;
|
|
47
|
+
}>;
|
|
48
|
+
readMessages(sessionId: string): Promise<import("@clinebot/llms").Message[]>;
|
|
49
|
+
handleHookEvent(_payload: HookEventPayload): Promise<void>;
|
|
50
|
+
subscribe(listener: (event: CoreSessionEvent) => void, options?: RuntimeHostSubscribeOptions): () => void;
|
|
51
|
+
private ensureSessionSubscription;
|
|
52
|
+
private disposeSessionSubscription;
|
|
53
|
+
private emitToolCallContentStart;
|
|
54
|
+
private handleHubEvent;
|
|
55
|
+
private handleCapabilityRequest;
|
|
56
|
+
private handleApprovalRequested;
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=hub.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hub.d.ts","sourceRoot":"","sources":["../../src/transports/hub.ts"],"names":[],"mappings":"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"}
|