@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,96 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Build an `AgentRuntimeConfig` from an `AgentConfig` plus session-owned
|
|
3
|
+
* supporting objects (model handler, tools, hooks, plugins, telemetry).
|
|
4
|
+
*
|
|
5
|
+
* @see PLAN.md §3.1 — new file introduced alongside the core runtime port.
|
|
6
|
+
* @see PLAN.md §3.2.1 — field-by-field mapping.
|
|
7
|
+
*
|
|
8
|
+
* Implemented in Step 8c. The function is intentionally **pure** — it
|
|
9
|
+
* does not create handlers or tools itself; it receives them already
|
|
10
|
+
* adapted (via `agent-config-adapter.ts`) from the caller
|
|
11
|
+
* (`SessionRuntime`) and wires them into an `AgentRuntimeConfig`.
|
|
12
|
+
*
|
|
13
|
+
* Fields that do **not** round-trip into `AgentRuntimeConfig`
|
|
14
|
+
* (e.g. `execution.maxConsecutiveMistakes`,
|
|
15
|
+
* `execution.loopDetection`, `hookPolicies`) are
|
|
16
|
+
* consumed by `SessionRuntime` / `MistakeTracker` /
|
|
17
|
+
* `LoopDetectionTracker` — not passed through here. See §3.2.1's
|
|
18
|
+
* "Fields with no corresponding AgentRuntimeConfig slot" note.
|
|
19
|
+
*/
|
|
20
|
+
import type { AgentConfig, AgentMessage, AgentModel, AgentRuntimeConfig, AgentRuntimePlugin, AgentTelemetry, AgentTool, BasicLogger } from "@clinebot/shared";
|
|
21
|
+
import type { HookBridge } from "../hooks/hook-bridge";
|
|
22
|
+
/**
|
|
23
|
+
* Inputs required to assemble an `AgentRuntimeConfig`. Distinct from
|
|
24
|
+
* `AgentConfig` because some of these (the model adapter, the hook
|
|
25
|
+
* bridge's runtime-hooks bag, a resolved plugin list) can only be
|
|
26
|
+
* produced inside `SessionRuntime`.
|
|
27
|
+
*/
|
|
28
|
+
export interface CreateAgentRuntimeConfigInput {
|
|
29
|
+
readonly agentConfig: AgentConfig;
|
|
30
|
+
/**
|
|
31
|
+
* Core/hub runtime session identifier used for host lifecycle operations,
|
|
32
|
+
* event routing, persistence, and approval delivery.
|
|
33
|
+
*/
|
|
34
|
+
readonly sessionId?: string;
|
|
35
|
+
readonly agentId: string;
|
|
36
|
+
/**
|
|
37
|
+
* Agent conversation/transcript identifier used by tools, hooks, telemetry,
|
|
38
|
+
* and model history correlation.
|
|
39
|
+
*/
|
|
40
|
+
readonly conversationId?: string;
|
|
41
|
+
readonly parentAgentId?: string;
|
|
42
|
+
/** The role label for teammates (`AgentConfig.role` in sub-agent configs). */
|
|
43
|
+
readonly agentRole?: string;
|
|
44
|
+
/** Pre-built model adapter (produced by `apiHandlerToAgentModel`). */
|
|
45
|
+
readonly model: AgentModel;
|
|
46
|
+
readonly logger?: BasicLogger;
|
|
47
|
+
readonly telemetry?: AgentTelemetry;
|
|
48
|
+
/** Pre-built tool array (builtins + plugin-contributed + session extras). */
|
|
49
|
+
readonly tools?: readonly AgentTool<unknown, unknown>[];
|
|
50
|
+
/** Pre-resolved plugin list from the plugin loader. */
|
|
51
|
+
readonly plugins?: readonly AgentRuntimePlugin[];
|
|
52
|
+
/**
|
|
53
|
+
* Optional hook bridge. When provided, `AgentRuntimeConfig.hooks`
|
|
54
|
+
* is populated from `hookBridge.toRuntimeHooks()`. Omit for
|
|
55
|
+
* runtimes that do not need hook dispatch (e.g. unit tests).
|
|
56
|
+
*/
|
|
57
|
+
readonly hookBridge?: HookBridge;
|
|
58
|
+
/** Seed messages (usually `session.conversation.getMessages()`). */
|
|
59
|
+
readonly initialMessages?: readonly AgentMessage[];
|
|
60
|
+
/**
|
|
61
|
+
* Override for `AgentRuntimeConfig.systemPrompt` — useful when
|
|
62
|
+
* the caller has composed additional guidance (e.g. via
|
|
63
|
+
* `LocalRuntimeHost.composeSystemPrompt`). Defaults to
|
|
64
|
+
* `agentConfig.systemPrompt`.
|
|
65
|
+
*/
|
|
66
|
+
readonly systemPrompt?: string;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Produce an `AgentRuntimeConfig` per PLAN.md §3.2.1 mapping.
|
|
70
|
+
*/
|
|
71
|
+
export declare function createAgentRuntimeConfig(input: CreateAgentRuntimeConfigInput): AgentRuntimeConfig;
|
|
72
|
+
/**
|
|
73
|
+
* Collect the provider-/reasoning-related fields from `AgentConfig`
|
|
74
|
+
* into `AgentRuntimeConfig.modelOptions`. Kept undefined when every
|
|
75
|
+
* field is undefined so the runtime does not receive an empty object.
|
|
76
|
+
*/
|
|
77
|
+
export declare function buildModelOptions(config: AgentConfig): Record<string, unknown> | undefined;
|
|
78
|
+
/**
|
|
79
|
+
* Compose `messageModelInfo` from the provider-related fields per
|
|
80
|
+
* §3.2.1: `{ id: modelId, provider: providerId, family:
|
|
81
|
+
* providerConfig?.family }`.
|
|
82
|
+
*/
|
|
83
|
+
export declare function buildMessageModelInfo(config: AgentConfig): AgentMessage["modelInfo"];
|
|
84
|
+
/**
|
|
85
|
+
* `"parallel"` when `maxParallelToolCalls ≥ 2`, `"sequential"` when
|
|
86
|
+
* `1`, `undefined` when the caller did not specify.
|
|
87
|
+
*/
|
|
88
|
+
export declare function resolveToolExecution(maxParallelToolCalls: number | undefined): "sequential" | "parallel" | undefined;
|
|
89
|
+
/**
|
|
90
|
+
* Adapt the full `ITelemetryService` to the minimal `AgentTelemetry`
|
|
91
|
+
* shape. The runtime only calls `capture(event, properties)`; the
|
|
92
|
+
* remaining methods are host concerns and stay on the
|
|
93
|
+
* `ITelemetryService` instance owned by `SessionRuntime`.
|
|
94
|
+
*/
|
|
95
|
+
export declare function mapTelemetry(telemetry: AgentConfig["telemetry"]): AgentTelemetry | undefined;
|
|
96
|
+
//# sourceMappingURL=agent-runtime-config-builder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-runtime-config-builder.d.ts","sourceRoot":"","sources":["../../src/runtime/agent-runtime-config-builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EACX,WAAW,EACX,YAAY,EACZ,UAAU,EACV,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,SAAS,EACT,WAAW,EACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAEvD;;;;;GAKG;AACH,MAAM,WAAW,6BAA6B;IAC7C,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB;;;OAGG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,8EAA8E;IAC9E,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,sEAAsE;IACtE,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,cAAc,CAAC;IACpC,6EAA6E;IAC7E,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;IACxD,uDAAuD;IACvD,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACjD;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IACjC,oEAAoE;IACpE,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IACnD;;;;;OAKG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACvC,KAAK,EAAE,6BAA6B,GAClC,kBAAkB,CA8BpB;AAMD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAChC,MAAM,EAAE,WAAW,GACjB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAkBrC;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CACpC,MAAM,EAAE,WAAW,GACjB,YAAY,CAAC,WAAW,CAAC,CAQ3B;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CACnC,oBAAoB,EAAE,MAAM,GAAG,SAAS,GACtC,YAAY,GAAG,UAAU,GAAG,SAAS,CAKvC;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAC3B,SAAS,EAAE,WAAW,CAAC,WAAW,CAAC,GACjC,cAAc,GAAG,SAAS,CAmB5B"}
|
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
import type { SessionHistoryRecord, SessionRecord } from "../types/sessions";
|
|
2
2
|
import type { RuntimeHost } from "./runtime-host";
|
|
3
|
+
export interface SessionHistoryListOptions {
|
|
4
|
+
limit?: number;
|
|
5
|
+
includeManifestFallback?: boolean;
|
|
6
|
+
hydrate?: boolean;
|
|
7
|
+
}
|
|
3
8
|
export declare function hydrateSessionHistory(host: Pick<RuntimeHost, "readMessages">, rows: SessionRecord[]): Promise<SessionHistoryRecord[]>;
|
|
9
|
+
export declare function listSessionHistory(host: Pick<RuntimeHost, "list" | "readMessages">, options?: SessionHistoryListOptions): Promise<SessionHistoryRecord[]>;
|
|
4
10
|
//# sourceMappingURL=history.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../../src/runtime/history.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../../src/runtime/history.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAEX,oBAAoB,EACpB,aAAa,EACb,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,MAAM,WAAW,yBAAyB;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAySD,wBAAsB,qBAAqB,CAC1C,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,EACvC,IAAI,EAAE,aAAa,EAAE,GACnB,OAAO,CAAC,oBAAoB,EAAE,CAAC,CA0BjC;AAED,wBAAsB,kBAAkB,CACvC,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,cAAc,CAAC,EAChD,OAAO,GAAE,yBAA8B,GACrC,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAwBjC"}
|
package/dist/runtime/host.d.ts
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import type { ClineCoreOptions } from "../ClineCore";
|
|
2
2
|
import { FileSessionService } from "../session/file-session-service";
|
|
3
|
-
import { RpcCoreSessionService } from "../session/rpc-session-service";
|
|
4
3
|
import { CoreSessionService } from "../session/session-service";
|
|
5
4
|
import type { RuntimeHost } from "./runtime-host";
|
|
6
|
-
export type SessionBackend =
|
|
5
|
+
export type SessionBackend = CoreSessionService | FileSessionService;
|
|
7
6
|
export declare function resolveSessionBackend(options: ClineCoreOptions): Promise<SessionBackend>;
|
|
8
7
|
export declare function createRuntimeHost(options: ClineCoreOptions): Promise<RuntimeHost>;
|
|
9
8
|
//# sourceMappingURL=host.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../src/runtime/host.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../src/runtime/host.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAQrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAIhE,OAAO,KAAK,EAAE,WAAW,EAAmB,MAAM,gBAAgB,CAAC;AAkBnE,MAAM,MAAM,cAAc,GAAG,kBAAkB,GAAG,kBAAkB,CAAC;AAsErE,wBAAsB,qBAAqB,CAC1C,OAAO,EAAE,gBAAgB,GACvB,OAAO,CAAC,cAAc,CAAC,CAiBzB;AAED,wBAAsB,iBAAiB,CACtC,OAAO,EAAE,gBAAgB,GACvB,OAAO,CAAC,WAAW,CAAC,CAiGtB"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Repeated tool-call loop detection.
|
|
3
|
+
*
|
|
4
|
+
* @see PLAN.md §3.1 — helpers moved from `packages/agents/src/context/loop-detection.ts`.
|
|
5
|
+
* @see PLAN.md §3.2.3 — public surface of `LoopDetectionTracker`.
|
|
6
|
+
*
|
|
7
|
+
* The pure helpers (`createLoopDetectionState`, `resetLoopDetectionState`,
|
|
8
|
+
* `toolCallSignature`, `checkRepeatedToolCall`) are ported verbatim. The
|
|
9
|
+
* `LoopDetectionTracker` class is a thin wrapper that owns a
|
|
10
|
+
* `LoopDetectionState` and exposes the `inspect()` / `reset()` surface that
|
|
11
|
+
* `SessionRuntime` installs as a `beforeTool` hook per §3.2.3.
|
|
12
|
+
*/
|
|
13
|
+
import type { LoopDetectionConfig } from "@clinebot/shared";
|
|
14
|
+
export interface LoopDetectionState {
|
|
15
|
+
lastToolName: string;
|
|
16
|
+
lastToolSignature: string;
|
|
17
|
+
consecutiveIdenticalCount: number;
|
|
18
|
+
}
|
|
19
|
+
export declare function createLoopDetectionState(): LoopDetectionState;
|
|
20
|
+
export declare function resetLoopDetectionState(state: LoopDetectionState): void;
|
|
21
|
+
export declare function toolCallSignature(input: unknown): string;
|
|
22
|
+
export interface LoopCheckResult {
|
|
23
|
+
softWarning: boolean;
|
|
24
|
+
hardEscalation: boolean;
|
|
25
|
+
}
|
|
26
|
+
export declare function checkRepeatedToolCall(state: LoopDetectionState, toolName: string, signature: string, config: LoopDetectionConfig): LoopCheckResult;
|
|
27
|
+
/**
|
|
28
|
+
* Verdict returned by {@link LoopDetectionTracker.inspect}.
|
|
29
|
+
*
|
|
30
|
+
* - `"ok"` — no repeated call detected.
|
|
31
|
+
* - `"soft"` — soft-warning threshold reached; SessionRuntime may surface a
|
|
32
|
+
* recovery notice but should not block the call.
|
|
33
|
+
* - `"hard"` — hard-escalation threshold reached; SessionRuntime should
|
|
34
|
+
* stop the run with the provided `message`.
|
|
35
|
+
*/
|
|
36
|
+
export interface LoopDetectionVerdict {
|
|
37
|
+
kind: "ok" | "soft" | "hard";
|
|
38
|
+
message?: string;
|
|
39
|
+
}
|
|
40
|
+
/** Minimal call shape the tracker needs; matches `AgentToolCallPart` subset. */
|
|
41
|
+
export interface LoopDetectionCall {
|
|
42
|
+
name: string;
|
|
43
|
+
input: unknown;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Per-session repeated-tool-call detector.
|
|
47
|
+
*
|
|
48
|
+
* `SessionRuntime` owns the instance and installs a `beforeTool` hook
|
|
49
|
+
* (see `AgentRuntimeHooks.beforeTool`) that calls `inspect()` to decide
|
|
50
|
+
* whether to return `{ skip, stop, reason }`.
|
|
51
|
+
*/
|
|
52
|
+
export declare class LoopDetectionTracker {
|
|
53
|
+
private readonly config;
|
|
54
|
+
private readonly state;
|
|
55
|
+
constructor(config?: Partial<LoopDetectionConfig>);
|
|
56
|
+
inspect(call: LoopDetectionCall): LoopDetectionVerdict;
|
|
57
|
+
reset(): void;
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=loop-detection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loop-detection.d.ts","sourceRoot":"","sources":["../../src/runtime/loop-detection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAM5D,MAAM,WAAW,kBAAkB;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,yBAAyB,EAAE,MAAM,CAAC;CAClC;AAED,wBAAgB,wBAAwB,IAAI,kBAAkB,CAM7D;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI,CAIvE;AAYD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CASxD;AAED,MAAM,WAAW,eAAe;IAC/B,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC;CACxB;AAED,wBAAgB,qBAAqB,CACpC,KAAK,EAAE,kBAAkB,EACzB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,mBAAmB,GACzB,eAAe,CAgBjB;AAMD;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAoB;IACpC,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,gFAAgF;AAChF,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;CACf;AAOD;;;;;;GAMG;AACH,qBAAa,oBAAoB;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;IAC7C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAkD;gBAE5D,MAAM,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC;IAOjD,OAAO,CAAC,IAAI,EAAE,iBAAiB,GAAG,oBAAoB;IAuBtD,KAAK,IAAI,IAAI;CAGb"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Per-session consecutive-mistake tracker.
|
|
3
|
+
*
|
|
4
|
+
* @see PLAN.md §3.1 — wrapped around `recordMistake` moved from
|
|
5
|
+
* `packages/agents/src/api/error-handling.ts` lines 147–311.
|
|
6
|
+
* @see PLAN.md §3.2.3 — public surface of `MistakeTracker`.
|
|
7
|
+
*
|
|
8
|
+
* The pure procedural `recordMistake(input, deps)` becomes `record(input)`
|
|
9
|
+
* on the class; `consecutiveMistakes` is internal state. Other deps flow
|
|
10
|
+
* through the constructor instead.
|
|
11
|
+
*
|
|
12
|
+
* NOTE: the §3.2.3 constructor shape omits some fields (agentId,
|
|
13
|
+
* conversationId/runId getters, appendRecoveryNotice). They are retained
|
|
14
|
+
* here for log + notice parity per PLAN.md §3.4.3/§3.4.5. Step 8
|
|
15
|
+
* (`impl-runtime-porter`) may refactor once SessionRuntime is wired up.
|
|
16
|
+
*/
|
|
17
|
+
import type { AgentEvent, BasicLogMetadata, ConsecutiveMistakeLimitContext, ConsecutiveMistakeLimitDecision } from "@clinebot/shared";
|
|
18
|
+
/**
|
|
19
|
+
* Legacy-agents-style leveled log function. The sdk-re `BasicLogger`
|
|
20
|
+
* does not carry a level argument (§shared/logging/logger.ts); callers
|
|
21
|
+
* are expected to bridge via `metadata.severity` or dispatch to
|
|
22
|
+
* `debug`/`log`/`error`. `MistakeTracker` accepts a leveled callable
|
|
23
|
+
* here so Step 8 can plug in whichever bridging shape `SessionRuntime`
|
|
24
|
+
* ends up using.
|
|
25
|
+
*/
|
|
26
|
+
export type LeveledLog = (level: "debug" | "info" | "warn" | "error", message: string, metadata?: BasicLogMetadata) => void;
|
|
27
|
+
export type MistakeReason = "api_error" | "invalid_tool_call" | "tool_execution_failed";
|
|
28
|
+
export interface RecordMistakeInput {
|
|
29
|
+
iteration: number;
|
|
30
|
+
reason: MistakeReason;
|
|
31
|
+
details?: string;
|
|
32
|
+
/** When true, jump straight to maxConsecutiveMistakes instead of incrementing by 1. */
|
|
33
|
+
forceAtLimit?: boolean;
|
|
34
|
+
}
|
|
35
|
+
export type MistakeOutcome = {
|
|
36
|
+
action: "continue";
|
|
37
|
+
guidance?: string;
|
|
38
|
+
} | {
|
|
39
|
+
action: "stop";
|
|
40
|
+
message: string;
|
|
41
|
+
reason?: string;
|
|
42
|
+
};
|
|
43
|
+
export interface MistakeTrackerOptions {
|
|
44
|
+
readonly maxConsecutiveMistakes: number;
|
|
45
|
+
readonly onLimitReached?: (ctx: ConsecutiveMistakeLimitContext) => Promise<ConsecutiveMistakeLimitDecision> | ConsecutiveMistakeLimitDecision;
|
|
46
|
+
readonly emit: (event: AgentEvent) => void;
|
|
47
|
+
readonly log: LeveledLog;
|
|
48
|
+
readonly agentId: string;
|
|
49
|
+
readonly getConversationId: () => string;
|
|
50
|
+
readonly getActiveRunId: () => string;
|
|
51
|
+
readonly appendRecoveryNotice: (message: string, reason: MistakeReason) => void;
|
|
52
|
+
}
|
|
53
|
+
export declare class MistakeTracker {
|
|
54
|
+
private consecutiveMistakes;
|
|
55
|
+
private readonly options;
|
|
56
|
+
constructor(options: MistakeTrackerOptions);
|
|
57
|
+
record(input: RecordMistakeInput): Promise<MistakeOutcome>;
|
|
58
|
+
reset(): void;
|
|
59
|
+
get value(): number;
|
|
60
|
+
}
|
|
61
|
+
export declare function buildMistakeLimitStopMessage(input: {
|
|
62
|
+
iteration: number;
|
|
63
|
+
consecutiveMistakes: number;
|
|
64
|
+
maxConsecutiveMistakes: number;
|
|
65
|
+
reason: "api_error" | "invalid_tool_call" | "completion_without_submit" | "tool_execution_failed";
|
|
66
|
+
details?: string;
|
|
67
|
+
stopReason?: string;
|
|
68
|
+
}): string;
|
|
69
|
+
//# sourceMappingURL=mistake-tracker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mistake-tracker.d.ts","sourceRoot":"","sources":["../../src/runtime/mistake-tracker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EACX,UAAU,EACV,gBAAgB,EAChB,8BAA8B,EAC9B,+BAA+B,EAC/B,MAAM,kBAAkB,CAAC;AAE1B;;;;;;;GAOG;AACH,MAAM,MAAM,UAAU,GAAG,CACxB,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,EAC1C,OAAO,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,gBAAgB,KACvB,IAAI,CAAC;AAEV,MAAM,MAAM,aAAa,GACtB,WAAW,GACX,mBAAmB,GACnB,uBAAuB,CAAC;AAE3B,MAAM,WAAW,kBAAkB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,aAAa,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uFAAuF;IACvF,YAAY,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,MAAM,cAAc,GACvB;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GACzC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAExD,MAAM,WAAW,qBAAqB;IACrC,QAAQ,CAAC,sBAAsB,EAAE,MAAM,CAAC;IACxC,QAAQ,CAAC,cAAc,CAAC,EAAE,CACzB,GAAG,EAAE,8BAA8B,KAEjC,OAAO,CAAC,+BAA+B,CAAC,GACxC,+BAA+B,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IAC3C,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,iBAAiB,EAAE,MAAM,MAAM,CAAC;IACzC,QAAQ,CAAC,cAAc,EAAE,MAAM,MAAM,CAAC;IACtC,QAAQ,CAAC,oBAAoB,EAAE,CAC9B,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,aAAa,KACjB,IAAI,CAAC;CACV;AAED,qBAAa,cAAc;IAC1B,OAAO,CAAC,mBAAmB,CAAK;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwB;gBAEpC,OAAO,EAAE,qBAAqB;IAIpC,MAAM,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,cAAc,CAAC;IA8DhE,KAAK,IAAI,IAAI;IAIb,IAAI,KAAK,IAAI,MAAM,CAElB;CACD;AAMD,wBAAgB,4BAA4B,CAAC,KAAK,EAAE;IACnD,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,MAAM,EACH,WAAW,GACX,mBAAmB,GACnB,2BAA2B,GAC3B,uBAAuB,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,MAAM,CAgBT"}
|
package/dist/runtime/rules.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { RuleConfig, UserInstructionConfigWatcher } from "../extensions/config";
|
|
2
2
|
export declare function isRuleEnabled(rule: RuleConfig): boolean;
|
|
3
3
|
export declare function formatRulesForSystemPrompt(rules: ReadonlyArray<RuleConfig>): string;
|
|
4
|
+
export declare function mergeRulesForSystemPrompt(primaryRules?: string, additionalRules?: string): string | undefined;
|
|
4
5
|
export declare function listEnabledRulesFromWatcher(watcher: UserInstructionConfigWatcher): RuleConfig[];
|
|
5
6
|
export declare function loadRulesForSystemPromptFromWatcher(watcher: UserInstructionConfigWatcher): string;
|
|
6
7
|
//# sourceMappingURL=rules.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../src/runtime/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,UAAU,EACV,4BAA4B,EAC5B,MAAM,sBAAsB,CAAC;AAE9B,wBAAgB,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAEvD;AAED,wBAAgB,0BAA0B,CACzC,KAAK,EAAE,aAAa,CAAC,UAAU,CAAC,GAC9B,MAAM,CASR;AAED,wBAAgB,2BAA2B,CAC1C,OAAO,EAAE,4BAA4B,GACnC,UAAU,EAAE,CAMd;AAED,wBAAgB,mCAAmC,CAClD,OAAO,EAAE,4BAA4B,GACnC,MAAM,CAER"}
|
|
1
|
+
{"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../src/runtime/rules.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,UAAU,EACV,4BAA4B,EAC5B,MAAM,sBAAsB,CAAC;AAE9B,wBAAgB,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAEvD;AAED,wBAAgB,0BAA0B,CACzC,KAAK,EAAE,aAAa,CAAC,UAAU,CAAC,GAC9B,MAAM,CASR;AAED,wBAAgB,yBAAyB,CACxC,YAAY,CAAC,EAAE,MAAM,EACrB,eAAe,CAAC,EAAE,MAAM,GACtB,MAAM,GAAG,SAAS,CAOpB;AAED,wBAAgB,2BAA2B,CAC1C,OAAO,EAAE,4BAA4B,GACnC,UAAU,EAAE,CAMd;AAED,wBAAgB,mCAAmC,CAClD,OAAO,EAAE,4BAA4B,GACnC,MAAM,CAER"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-builder.d.ts","sourceRoot":"","sources":["../../src/runtime/runtime-builder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"runtime-builder.d.ts","sourceRoot":"","sources":["../../src/runtime/runtime-builder.ts"],"names":[],"mappings":"AA6CA,OAAO,KAAK,EACX,cAAc,EACd,mBAAmB,EACnB,YAAY,IAAI,kBAAkB,EAClC,MAAM,mBAAmB,CAAC;AAwD3B,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AA+YD,qBAAa,qBAAsB,YAAW,cAAc;IAC3D,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAQ/B;IAEE,KAAK,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAwSpE"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Adapter from the new `AgentRuntimeEvent` union (13 variants, defined
|
|
3
|
+
* in `@clinebot/shared/src/agent.ts`) to the legacy `AgentEvent` union
|
|
4
|
+
* (9 top-level types, defined in
|
|
5
|
+
* `@clinebot/shared/src/agents/types.ts`) consumed by today's
|
|
6
|
+
* `Agent.subscribeEvents` callback.
|
|
7
|
+
*
|
|
8
|
+
* @see PLAN.md §3.1 — new file introduced alongside the core runtime port.
|
|
9
|
+
* @see PLAN.md §3.3.2 — variant-by-variant OLD → NEW mapping.
|
|
10
|
+
* @see PLAN.md §3.2.4 — called from `Agent.subscribeEvents` inside the
|
|
11
|
+
* legacy-agent facade.
|
|
12
|
+
*
|
|
13
|
+
* --- IMPLEMENTATION NOTE — PLAN §3.3.2 text/reasoning-delta rows ----------
|
|
14
|
+
*
|
|
15
|
+
* PLAN.md §3.3.2 describes `assistant-text-delta` as "first delta →
|
|
16
|
+
* content_start, subsequent → content_update". The **actual** legacy
|
|
17
|
+
* shape forbids this: `AgentContentUpdateEvent.contentType` is
|
|
18
|
+
* hard-typed as `"tool"` in
|
|
19
|
+
* `packages/shared/src/agents/types.ts:87`, and the legacy
|
|
20
|
+
* turn-processor
|
|
21
|
+
* (`packages/agents/src/runtime/turn-processor.ts:82-87,113-118`)
|
|
22
|
+
* emits a `content_start` event for **every** text delta and for
|
|
23
|
+
* **every** reasoning delta — not just the first. This adapter
|
|
24
|
+
* preserves that observable behavior (what every legacy consumer
|
|
25
|
+
* relies on today) over the description in §3.3.2.
|
|
26
|
+
*
|
|
27
|
+
* text deltas → content_start { contentType:"text", text,
|
|
28
|
+
* accumulated } (per delta)
|
|
29
|
+
* reasoning deltas → content_start { contentType:"reasoning",
|
|
30
|
+
* reasoning, redacted } (per delta)
|
|
31
|
+
* assistant-message → one content_end { contentType:"text", text }
|
|
32
|
+
* if any text parts; one
|
|
33
|
+
* content_end { contentType:"reasoning", reasoning }
|
|
34
|
+
* if any reasoning parts
|
|
35
|
+
* (turn-processor.ts:157-170).
|
|
36
|
+
*
|
|
37
|
+
* --- STATEFUL BOOK-KEEPING ------------------------------------------------
|
|
38
|
+
*
|
|
39
|
+
* 1. Rolling usage totals. `usage-updated` carries the already-
|
|
40
|
+
* accumulated snapshot (agent-runtime.ts:668-683). Legacy
|
|
41
|
+
* `AgentUsageEvent` wants both per-turn delta and accumulated
|
|
42
|
+
* totals; the adapter subtracts the previous accumulated value
|
|
43
|
+
* from the incoming one to produce the delta.
|
|
44
|
+
* 2. Tool timing. `tool-finished` does not carry `durationMs`. The
|
|
45
|
+
* adapter records `Date.now()` on `tool-started` (keyed by
|
|
46
|
+
* `toolCallId`) and computes `durationMs` at `tool-finished`.
|
|
47
|
+
* Matches `tool-orchestrator.ts:112-131`.
|
|
48
|
+
*
|
|
49
|
+
* Both are scoped to a single adapter instance and cleared by
|
|
50
|
+
* `reset()`.
|
|
51
|
+
*/
|
|
52
|
+
import type { AgentEvent, AgentMessage, AgentRuntimeEvent } from "@clinebot/shared";
|
|
53
|
+
declare function textFromMessage(message: AgentMessage | undefined): string;
|
|
54
|
+
/**
|
|
55
|
+
* Per-subscriber adapter instance. Constructed once per
|
|
56
|
+
* `Agent.subscribeEvents` registration (or per `SessionRuntime`),
|
|
57
|
+
* used for the lifetime of that subscription, and `reset()` at the
|
|
58
|
+
* start of every new run.
|
|
59
|
+
*
|
|
60
|
+
* `translate(event)` returns zero, one, or two `AgentEvent`s. An
|
|
61
|
+
* array is needed because a single `assistant-message` may yield both
|
|
62
|
+
* a text `content_end` and a reasoning `content_end`. Empty array
|
|
63
|
+
* means the event is intentionally suppressed (§3.3.2 rows
|
|
64
|
+
* `run-started`, `message-added`).
|
|
65
|
+
*/
|
|
66
|
+
export declare class RuntimeEventAdapter {
|
|
67
|
+
private lastUsage;
|
|
68
|
+
private toolStartedAt;
|
|
69
|
+
translate(event: AgentRuntimeEvent): AgentEvent[];
|
|
70
|
+
reset(): void;
|
|
71
|
+
private translateAssistantMessage;
|
|
72
|
+
private translateToolStarted;
|
|
73
|
+
private translateToolFinished;
|
|
74
|
+
private translateUsage;
|
|
75
|
+
private translateRunFinished;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Stateless translator. Works correctly for every variant except
|
|
79
|
+
* those that require bookkeeping:
|
|
80
|
+
*
|
|
81
|
+
* - `usage-updated` — deltas cannot be computed without a prior
|
|
82
|
+
* snapshot; this function treats the prior snapshot as zero (so
|
|
83
|
+
* delta == accumulated). Adequate for a single event, incorrect
|
|
84
|
+
* across multiple.
|
|
85
|
+
* - `tool-finished` — `durationMs` is reported as `undefined`
|
|
86
|
+
* because the corresponding `tool-started` was never observed by
|
|
87
|
+
* this one-shot adapter.
|
|
88
|
+
*
|
|
89
|
+
* Production code must use `RuntimeEventAdapter` for multi-event
|
|
90
|
+
* runs; this function exists for ad-hoc unit tests and one-shot
|
|
91
|
+
* translations where bookkeeping does not matter.
|
|
92
|
+
*
|
|
93
|
+
* Returns `undefined` when the event maps to zero legacy events
|
|
94
|
+
* (`run-started`, `message-added`, or an `assistant-message` that
|
|
95
|
+
* carries no text/reasoning parts). When an event produces multiple
|
|
96
|
+
* legacy events (e.g. `assistant-message` with both text and
|
|
97
|
+
* reasoning parts), only the first is returned; callers needing the
|
|
98
|
+
* full array must use `RuntimeEventAdapter.translate()`.
|
|
99
|
+
*/
|
|
100
|
+
export declare function toLegacyAgentEvent(event: AgentRuntimeEvent): AgentEvent | undefined;
|
|
101
|
+
export { textFromMessage };
|
|
102
|
+
//# sourceMappingURL=runtime-event-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-event-adapter.d.ts","sourceRoot":"","sources":["../../src/runtime/runtime-event-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AAEH,OAAO,KAAK,EACX,UAAU,EAEV,YAAY,EAEZ,iBAAiB,EAKjB,MAAM,kBAAkB,CAAC;AAuC1B,iBAAS,eAAe,CAAC,OAAO,EAAE,YAAY,GAAG,SAAS,GAAG,MAAM,CAKlE;AAsCD;;;;;;;;;;;GAWG;AACH,qBAAa,mBAAmB;IAC/B,OAAO,CAAC,SAAS,CAMf;IAEF,OAAO,CAAC,aAAa,CAA6B;IAElD,SAAS,CAAC,KAAK,EAAE,iBAAiB,GAAG,UAAU,EAAE;IAuEjD,KAAK,IAAI,IAAI;IAab,OAAO,CAAC,yBAAyB;IAiBjC,OAAO,CAAC,oBAAoB;IAe5B,OAAO,CAAC,qBAAqB;IAwB7B,OAAO,CAAC,cAAc;IAsCtB,OAAO,CAAC,oBAAoB;CA6B5B;AAMD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,kBAAkB,CACjC,KAAK,EAAE,iBAAiB,GACtB,UAAU,GAAG,SAAS,CAIxB;AAED,OAAO,EAAE,eAAe,EAAE,CAAC"}
|
|
@@ -1,35 +1,29 @@
|
|
|
1
1
|
import type * as LlmsProviders from "@clinebot/llms";
|
|
2
|
-
import type { AgentResult, ToolApprovalRequest, ToolApprovalResult } from "@clinebot/shared";
|
|
2
|
+
import type { AgentResult, RuntimeConfigExtensionKind, ToolApprovalRequest, ToolApprovalResult } from "@clinebot/shared";
|
|
3
|
+
import type { ToolExecutors } from "../extensions/tools";
|
|
3
4
|
import type { HookEventPayload } from "../hooks";
|
|
5
|
+
import type { ProviderSettings } from "../llms/provider-settings";
|
|
4
6
|
import type { SessionManifest } from "../session/session-manifest";
|
|
5
7
|
import type { SessionSource } from "../types/common";
|
|
6
8
|
import type { CoreSessionConfig } from "../types/config";
|
|
7
|
-
import type { CoreSessionEvent } from "../types/events";
|
|
9
|
+
import type { CoreSessionEvent, SessionPendingPrompt } from "../types/events";
|
|
8
10
|
import type { SessionRecord } from "../types/sessions";
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
rules?: CoreSessionConfig["rules"];
|
|
19
|
-
maxIterations?: CoreSessionConfig["maxIterations"];
|
|
20
|
-
enableTools: boolean;
|
|
21
|
-
enableSpawnAgent: boolean;
|
|
22
|
-
enableAgentTeams: boolean;
|
|
23
|
-
disableMcpSettingsTools?: boolean;
|
|
24
|
-
teamName?: string;
|
|
25
|
-
missionLogIntervalSteps?: number;
|
|
26
|
-
missionLogIntervalMs?: number;
|
|
27
|
-
}
|
|
28
|
-
export type LocalRuntimeConfigOverrides = Omit<CoreSessionConfig, keyof RuntimeSessionConfig>;
|
|
11
|
+
type LocalOnlyCoreSessionConfigKeys = "hooks" | "logger" | "telemetry" | "extensionContext" | "extraTools" | "extensions" | "onTeamEvent" | "onConsecutiveMistakeLimitReached";
|
|
12
|
+
export type RuntimeSessionConfig = Omit<CoreSessionConfig, LocalOnlyCoreSessionConfigKeys | "checkpoint" | "compaction"> & {
|
|
13
|
+
checkpoint?: Omit<NonNullable<CoreSessionConfig["checkpoint"]>, "createCheckpoint">;
|
|
14
|
+
compaction?: Omit<NonNullable<CoreSessionConfig["compaction"]>, "compact">;
|
|
15
|
+
};
|
|
16
|
+
export type LocalRuntimeConfigOverrides = Pick<CoreSessionConfig, LocalOnlyCoreSessionConfigKeys> & {
|
|
17
|
+
checkpoint?: Pick<NonNullable<CoreSessionConfig["checkpoint"]>, "createCheckpoint"> & Partial<NonNullable<CoreSessionConfig["checkpoint"]>>;
|
|
18
|
+
compaction?: Pick<NonNullable<CoreSessionConfig["compaction"]>, "compact"> & Partial<NonNullable<CoreSessionConfig["compaction"]>>;
|
|
19
|
+
};
|
|
29
20
|
export interface LocalRuntimeStartOptions {
|
|
30
21
|
configOverrides?: Partial<LocalRuntimeConfigOverrides>;
|
|
22
|
+
modelCatalogDefaults?: Partial<NonNullable<ProviderSettings["modelCatalog"]>>;
|
|
31
23
|
userInstructionWatcher?: import("../extensions/config").UserInstructionConfigWatcher;
|
|
24
|
+
configExtensions?: RuntimeConfigExtensionKind[];
|
|
32
25
|
onTeamRestored?: () => void;
|
|
26
|
+
defaultToolExecutors?: Partial<ToolExecutors>;
|
|
33
27
|
}
|
|
34
28
|
export interface StartSessionInput {
|
|
35
29
|
config: RuntimeSessionConfig;
|
|
@@ -41,8 +35,9 @@ export interface StartSessionInput {
|
|
|
41
35
|
userImages?: string[];
|
|
42
36
|
userFiles?: string[];
|
|
43
37
|
/**
|
|
44
|
-
*
|
|
45
|
-
*
|
|
38
|
+
* Host-local bootstrap options. These are intentionally isolated from the
|
|
39
|
+
* transport-neutral runtime session config so all runtime hosts share the
|
|
40
|
+
* same execution contract while still allowing host-specific preparation.
|
|
46
41
|
*/
|
|
47
42
|
localRuntime?: LocalRuntimeStartOptions;
|
|
48
43
|
toolPolicies?: import("@clinebot/shared").AgentConfig["toolPolicies"];
|
|
@@ -73,6 +68,30 @@ export interface SessionAccumulatedUsage {
|
|
|
73
68
|
cacheWriteTokens: number;
|
|
74
69
|
totalCost: number;
|
|
75
70
|
}
|
|
71
|
+
export interface PendingPromptMutationResult {
|
|
72
|
+
sessionId: string;
|
|
73
|
+
prompts: SessionPendingPrompt[];
|
|
74
|
+
prompt?: SessionPendingPrompt;
|
|
75
|
+
updated?: boolean;
|
|
76
|
+
removed?: boolean;
|
|
77
|
+
}
|
|
78
|
+
export type PendingPromptsAction = "list" | "update" | "delete";
|
|
79
|
+
export interface PendingPromptsListInput {
|
|
80
|
+
sessionId: string;
|
|
81
|
+
}
|
|
82
|
+
export interface PendingPromptsUpdateInput {
|
|
83
|
+
sessionId: string;
|
|
84
|
+
promptId: string;
|
|
85
|
+
prompt?: string;
|
|
86
|
+
delivery?: "queue" | "steer";
|
|
87
|
+
}
|
|
88
|
+
export interface PendingPromptsDeleteInput {
|
|
89
|
+
sessionId: string;
|
|
90
|
+
promptId: string;
|
|
91
|
+
}
|
|
92
|
+
export interface RuntimeHostSubscribeOptions {
|
|
93
|
+
sessionId?: string;
|
|
94
|
+
}
|
|
76
95
|
/**
|
|
77
96
|
* RuntimeHost is the transport/runtime boundary for core session execution.
|
|
78
97
|
* Callers must normalize broad local config into `RuntimeSessionConfig`
|
|
@@ -82,6 +101,9 @@ export interface RuntimeHost {
|
|
|
82
101
|
readonly runtimeAddress?: string;
|
|
83
102
|
start(input: StartSessionInput): Promise<StartSessionResult>;
|
|
84
103
|
send(input: SendSessionInput): Promise<AgentResult | undefined>;
|
|
104
|
+
pendingPrompts(action: "list", input: PendingPromptsListInput): Promise<SessionPendingPrompt[]>;
|
|
105
|
+
pendingPrompts(action: "update", input: PendingPromptsUpdateInput): Promise<PendingPromptMutationResult>;
|
|
106
|
+
pendingPrompts(action: "delete", input: PendingPromptsDeleteInput): Promise<PendingPromptMutationResult>;
|
|
85
107
|
getAccumulatedUsage(sessionId: string): Promise<SessionAccumulatedUsage | undefined>;
|
|
86
108
|
abort(sessionId: string, reason?: unknown): Promise<void>;
|
|
87
109
|
stop(sessionId: string): Promise<void>;
|
|
@@ -98,8 +120,9 @@ export interface RuntimeHost {
|
|
|
98
120
|
}>;
|
|
99
121
|
readMessages(sessionId: string): Promise<LlmsProviders.Message[]>;
|
|
100
122
|
handleHookEvent(payload: HookEventPayload): Promise<void>;
|
|
101
|
-
subscribe(listener: (event: CoreSessionEvent) => void): () => void;
|
|
123
|
+
subscribe(listener: (event: CoreSessionEvent) => void, options?: RuntimeHostSubscribeOptions): () => void;
|
|
102
124
|
updateSessionModel?(sessionId: string, modelId: string): Promise<void>;
|
|
103
125
|
}
|
|
104
|
-
export type RuntimeHostMode = "auto" | "
|
|
126
|
+
export type RuntimeHostMode = "auto" | "local" | "hub" | "remote";
|
|
127
|
+
export {};
|
|
105
128
|
//# sourceMappingURL=runtime-host.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-host.d.ts","sourceRoot":"","sources":["../../src/runtime/runtime-host.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,aAAa,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EACX,WAAW,EACX,mBAAmB,EACnB,kBAAkB,EAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"runtime-host.d.ts","sourceRoot":"","sources":["../../src/runtime/runtime-host.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-oauth-token-manager.d.ts","sourceRoot":"","sources":["../../src/runtime/runtime-oauth-token-manager.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"runtime-oauth-token-manager.d.ts","sourceRoot":"","sources":["../../src/runtime/runtime-oauth-token-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,iBAAiB,EAEtB,KAAK,eAAe,EACpB,MAAM,kBAAkB,CAAC;AAQ1B,OAAO,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AAMxF,KAAK,sBAAsB,GAAG,eAAe,CAAC;AAoG9C,qBAAa,wBAAyB,SAAQ,KAAK;IAClD,SAAgB,UAAU,EAAE,sBAAsB,CAAC;gBAEvC,UAAU,EAAE,sBAAsB;CAO9C;AAED,MAAM,MAAM,sBAAsB,GAAG;IACpC,UAAU,EAAE,sBAAsB,CAAC;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,qBAAa,wBAAwB;IACpC,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAA0B;IAClE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAoB;IAC/C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAG5B;gBAEQ,OAAO,CAAC,EAAE;QACrB,uBAAuB,CAAC,EAAE,uBAAuB,CAAC;QAClD,SAAS,CAAC,EAAE,iBAAiB,CAAC;KAC9B;IAMY,qBAAqB,CAAC,KAAK,EAAE;QACzC,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,CAAC,EAAE,OAAO,CAAC;KACvB,GAAG,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;YAO5B,uBAAuB;YAmBvB,6BAA6B;YAwD7B,kBAAkB;CA4BhC"}
|