@defai.digital/ax-cli 4.4.6 → 4.4.10
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/bin/ax-cli +1 -5
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +158 -9
- package/dist/index.js.map +1 -1
- package/dist/setup.d.ts +27 -0
- package/dist/setup.d.ts.map +1 -0
- package/dist/setup.js +591 -0
- package/dist/setup.js.map +1 -0
- package/package.json +43 -135
- package/LICENSE +0 -22
- package/README.md +0 -387
- package/config-defaults/messages.yaml +0 -75
- package/config-defaults/models.yaml +0 -57
- package/config-defaults/prompts.yaml +0 -948
- package/config-defaults/settings.yaml +0 -157
- package/dist/agent/agent-executor.d.ts +0 -61
- package/dist/agent/agent-executor.js +0 -194
- package/dist/agent/agent-executor.js.map +0 -1
- package/dist/agent/agent-router.d.ts +0 -68
- package/dist/agent/agent-router.js +0 -242
- package/dist/agent/agent-router.js.map +0 -1
- package/dist/agent/context-manager.d.ts +0 -122
- package/dist/agent/context-manager.js +0 -406
- package/dist/agent/context-manager.js.map +0 -1
- package/dist/agent/core/index.d.ts +0 -8
- package/dist/agent/core/index.js +0 -9
- package/dist/agent/core/index.js.map +0 -1
- package/dist/agent/core/types.d.ts +0 -92
- package/dist/agent/core/types.js +0 -11
- package/dist/agent/core/types.js.map +0 -1
- package/dist/agent/dependency-resolver.d.ts +0 -90
- package/dist/agent/dependency-resolver.js +0 -366
- package/dist/agent/dependency-resolver.js.map +0 -1
- package/dist/agent/execution/index.d.ts +0 -9
- package/dist/agent/execution/index.js +0 -9
- package/dist/agent/execution/index.js.map +0 -1
- package/dist/agent/execution/tool-executor.d.ts +0 -93
- package/dist/agent/execution/tool-executor.js +0 -552
- package/dist/agent/execution/tool-executor.js.map +0 -1
- package/dist/agent/index.d.ts +0 -14
- package/dist/agent/index.js +0 -145
- package/dist/agent/index.js.map +0 -1
- package/dist/agent/llm-agent.d.ts +0 -368
- package/dist/agent/llm-agent.js +0 -1931
- package/dist/agent/llm-agent.js.map +0 -1
- package/dist/agent/loop-detector.d.ts +0 -72
- package/dist/agent/loop-detector.js +0 -335
- package/dist/agent/loop-detector.js.map +0 -1
- package/dist/agent/parallel-tools.d.ts +0 -69
- package/dist/agent/parallel-tools.js +0 -188
- package/dist/agent/parallel-tools.js.map +0 -1
- package/dist/agent/planning/index.d.ts +0 -9
- package/dist/agent/planning/index.js +0 -9
- package/dist/agent/planning/index.js.map +0 -1
- package/dist/agent/planning/plan-executor.d.ts +0 -79
- package/dist/agent/planning/plan-executor.js +0 -240
- package/dist/agent/planning/plan-executor.js.map +0 -1
- package/dist/agent/progress-tracker.d.ts +0 -94
- package/dist/agent/progress-tracker.js +0 -225
- package/dist/agent/progress-tracker.js.map +0 -1
- package/dist/agent/specialized/analysis-agent.d.ts +0 -11
- package/dist/agent/specialized/analysis-agent.js +0 -24
- package/dist/agent/specialized/analysis-agent.js.map +0 -1
- package/dist/agent/specialized/debug-agent.d.ts +0 -11
- package/dist/agent/specialized/debug-agent.js +0 -46
- package/dist/agent/specialized/debug-agent.js.map +0 -1
- package/dist/agent/specialized/documentation-agent.d.ts +0 -11
- package/dist/agent/specialized/documentation-agent.js +0 -24
- package/dist/agent/specialized/documentation-agent.js.map +0 -1
- package/dist/agent/specialized/index.d.ts +0 -11
- package/dist/agent/specialized/index.js +0 -12
- package/dist/agent/specialized/index.js.map +0 -1
- package/dist/agent/specialized/performance-agent.d.ts +0 -11
- package/dist/agent/specialized/performance-agent.js +0 -24
- package/dist/agent/specialized/performance-agent.js.map +0 -1
- package/dist/agent/specialized/refactoring-agent.d.ts +0 -11
- package/dist/agent/specialized/refactoring-agent.js +0 -24
- package/dist/agent/specialized/refactoring-agent.js.map +0 -1
- package/dist/agent/specialized/testing-agent.d.ts +0 -11
- package/dist/agent/specialized/testing-agent.js +0 -24
- package/dist/agent/specialized/testing-agent.js.map +0 -1
- package/dist/agent/status-reporter.d.ts +0 -114
- package/dist/agent/status-reporter.js +0 -335
- package/dist/agent/status-reporter.js.map +0 -1
- package/dist/agent/streaming/index.d.ts +0 -9
- package/dist/agent/streaming/index.js +0 -9
- package/dist/agent/streaming/index.js.map +0 -1
- package/dist/agent/streaming/stream-handler.d.ts +0 -62
- package/dist/agent/streaming/stream-handler.js +0 -217
- package/dist/agent/streaming/stream-handler.js.map +0 -1
- package/dist/agent/subagent-orchestrator.d.ts +0 -166
- package/dist/agent/subagent-orchestrator.js +0 -487
- package/dist/agent/subagent-orchestrator.js.map +0 -1
- package/dist/agent/subagent-types.d.ts +0 -261
- package/dist/agent/subagent-types.js +0 -257
- package/dist/agent/subagent-types.js.map +0 -1
- package/dist/agent/subagent.d.ts +0 -116
- package/dist/agent/subagent.js +0 -507
- package/dist/agent/subagent.js.map +0 -1
- package/dist/checkpoint/index.d.ts +0 -9
- package/dist/checkpoint/index.js +0 -11
- package/dist/checkpoint/index.js.map +0 -1
- package/dist/checkpoint/manager.d.ts +0 -101
- package/dist/checkpoint/manager.js +0 -407
- package/dist/checkpoint/manager.js.map +0 -1
- package/dist/checkpoint/storage.d.ts +0 -39
- package/dist/checkpoint/storage.js +0 -350
- package/dist/checkpoint/storage.js.map +0 -1
- package/dist/checkpoint/types.d.ts +0 -111
- package/dist/checkpoint/types.js +0 -17
- package/dist/checkpoint/types.js.map +0 -1
- package/dist/commands/cache.d.ts +0 -7
- package/dist/commands/cache.js +0 -284
- package/dist/commands/cache.js.map +0 -1
- package/dist/commands/custom-commands.d.ts +0 -77
- package/dist/commands/custom-commands.js +0 -251
- package/dist/commands/custom-commands.js.map +0 -1
- package/dist/commands/design.d.ts +0 -18
- package/dist/commands/design.js +0 -511
- package/dist/commands/design.js.map +0 -1
- package/dist/commands/doctor.d.ts +0 -6
- package/dist/commands/doctor.js +0 -773
- package/dist/commands/doctor.js.map +0 -1
- package/dist/commands/frontend.d.ts +0 -9
- package/dist/commands/frontend.js +0 -645
- package/dist/commands/frontend.js.map +0 -1
- package/dist/commands/init/wizard.d.ts +0 -55
- package/dist/commands/init/wizard.js +0 -189
- package/dist/commands/init/wizard.js.map +0 -1
- package/dist/commands/init.d.ts +0 -8
- package/dist/commands/init.js +0 -195
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/mcp-migrate.d.ts +0 -9
- package/dist/commands/mcp-migrate.js +0 -175
- package/dist/commands/mcp-migrate.js.map +0 -1
- package/dist/commands/mcp.d.ts +0 -2
- package/dist/commands/mcp.js +0 -1292
- package/dist/commands/mcp.js.map +0 -1
- package/dist/commands/memory.d.ts +0 -6
- package/dist/commands/memory.js +0 -555
- package/dist/commands/memory.js.map +0 -1
- package/dist/commands/models.d.ts +0 -5
- package/dist/commands/models.js +0 -213
- package/dist/commands/models.js.map +0 -1
- package/dist/commands/plan.d.ts +0 -43
- package/dist/commands/plan.js +0 -362
- package/dist/commands/plan.js.map +0 -1
- package/dist/commands/rewind.d.ts +0 -19
- package/dist/commands/rewind.js +0 -221
- package/dist/commands/rewind.js.map +0 -1
- package/dist/commands/setup.d.ts +0 -14
- package/dist/commands/setup.js +0 -733
- package/dist/commands/setup.js.map +0 -1
- package/dist/commands/status.d.ts +0 -7
- package/dist/commands/status.js +0 -437
- package/dist/commands/status.js.map +0 -1
- package/dist/commands/templates.d.ts +0 -5
- package/dist/commands/templates.js +0 -245
- package/dist/commands/templates.js.map +0 -1
- package/dist/commands/update.d.ts +0 -49
- package/dist/commands/update.js +0 -366
- package/dist/commands/update.js.map +0 -1
- package/dist/commands/usage.d.ts +0 -8
- package/dist/commands/usage.js +0 -264
- package/dist/commands/usage.js.map +0 -1
- package/dist/commands/vscode.d.ts +0 -7
- package/dist/commands/vscode.js +0 -419
- package/dist/commands/vscode.js.map +0 -1
- package/dist/constants.d.ts +0 -236
- package/dist/constants.js +0 -288
- package/dist/constants.js.map +0 -1
- package/dist/design/figma-alias.d.ts +0 -170
- package/dist/design/figma-alias.js +0 -577
- package/dist/design/figma-alias.js.map +0 -1
- package/dist/design/figma-audit.d.ts +0 -40
- package/dist/design/figma-audit.js +0 -383
- package/dist/design/figma-audit.js.map +0 -1
- package/dist/design/figma-client.d.ts +0 -131
- package/dist/design/figma-client.js +0 -369
- package/dist/design/figma-client.js.map +0 -1
- package/dist/design/figma-map.d.ts +0 -29
- package/dist/design/figma-map.js +0 -346
- package/dist/design/figma-map.js.map +0 -1
- package/dist/design/figma-tokens.d.ts +0 -73
- package/dist/design/figma-tokens.js +0 -448
- package/dist/design/figma-tokens.js.map +0 -1
- package/dist/design/index.d.ts +0 -13
- package/dist/design/index.js +0 -20
- package/dist/design/index.js.map +0 -1
- package/dist/design/types.d.ts +0 -98
- package/dist/design/types.js +0 -9
- package/dist/design/types.js.map +0 -1
- package/dist/hooks/hook-runner.d.ts +0 -142
- package/dist/hooks/hook-runner.js +0 -436
- package/dist/hooks/hook-runner.js.map +0 -1
- package/dist/hooks/index.d.ts +0 -9
- package/dist/hooks/index.js +0 -10
- package/dist/hooks/index.js.map +0 -1
- package/dist/hooks/manager.d.ts +0 -84
- package/dist/hooks/manager.js +0 -348
- package/dist/hooks/manager.js.map +0 -1
- package/dist/hooks/types.d.ts +0 -134
- package/dist/hooks/types.js +0 -9
- package/dist/hooks/types.js.map +0 -1
- package/dist/index.d.ts +0 -2
- package/dist/ipc/index.d.ts +0 -9
- package/dist/ipc/index.js +0 -10
- package/dist/ipc/index.js.map +0 -1
- package/dist/ipc/vscode-client.d.ts +0 -200
- package/dist/ipc/vscode-client.js +0 -495
- package/dist/ipc/vscode-client.js.map +0 -1
- package/dist/llm/client.d.ts +0 -205
- package/dist/llm/client.js +0 -735
- package/dist/llm/client.js.map +0 -1
- package/dist/llm/tools.d.ts +0 -102
- package/dist/llm/tools.js +0 -275
- package/dist/llm/tools.js.map +0 -1
- package/dist/llm/types.d.ts +0 -428
- package/dist/llm/types.js +0 -194
- package/dist/llm/types.js.map +0 -1
- package/dist/mcp/automatosx-auto-discovery.d.ts +0 -66
- package/dist/mcp/automatosx-auto-discovery.js +0 -169
- package/dist/mcp/automatosx-auto-discovery.js.map +0 -1
- package/dist/mcp/automatosx-loader.d.ts +0 -99
- package/dist/mcp/automatosx-loader.js +0 -250
- package/dist/mcp/automatosx-loader.js.map +0 -1
- package/dist/mcp/cancellation.d.ts +0 -182
- package/dist/mcp/cancellation.js +0 -275
- package/dist/mcp/cancellation.js.map +0 -1
- package/dist/mcp/client-v2.d.ts +0 -500
- package/dist/mcp/client-v2.js +0 -1433
- package/dist/mcp/client-v2.js.map +0 -1
- package/dist/mcp/client.d.ts +0 -170
- package/dist/mcp/client.js +0 -232
- package/dist/mcp/client.js.map +0 -1
- package/dist/mcp/config-detector.d.ts +0 -90
- package/dist/mcp/config-detector.js +0 -250
- package/dist/mcp/config-detector.js.map +0 -1
- package/dist/mcp/config-migrator.d.ts +0 -68
- package/dist/mcp/config-migrator.js +0 -291
- package/dist/mcp/config-migrator.js.map +0 -1
- package/dist/mcp/config.d.ts +0 -24
- package/dist/mcp/config.js +0 -273
- package/dist/mcp/config.js.map +0 -1
- package/dist/mcp/constants.d.ts +0 -66
- package/dist/mcp/constants.js +0 -85
- package/dist/mcp/constants.js.map +0 -1
- package/dist/mcp/content-length-transport.d.ts +0 -106
- package/dist/mcp/content-length-transport.js +0 -413
- package/dist/mcp/content-length-transport.js.map +0 -1
- package/dist/mcp/debug.d.ts +0 -211
- package/dist/mcp/debug.js +0 -404
- package/dist/mcp/debug.js.map +0 -1
- package/dist/mcp/error-formatter.d.ts +0 -40
- package/dist/mcp/error-formatter.js +0 -207
- package/dist/mcp/error-formatter.js.map +0 -1
- package/dist/mcp/error-remediation.d.ts +0 -45
- package/dist/mcp/error-remediation.js +0 -291
- package/dist/mcp/error-remediation.js.map +0 -1
- package/dist/mcp/health.d.ts +0 -120
- package/dist/mcp/health.js +0 -267
- package/dist/mcp/health.js.map +0 -1
- package/dist/mcp/index.d.ts +0 -56
- package/dist/mcp/index.js +0 -89
- package/dist/mcp/index.js.map +0 -1
- package/dist/mcp/invariants.d.ts +0 -141
- package/dist/mcp/invariants.js +0 -243
- package/dist/mcp/invariants.js.map +0 -1
- package/dist/mcp/mutex-safe.d.ts +0 -151
- package/dist/mcp/mutex-safe.js +0 -260
- package/dist/mcp/mutex-safe.js.map +0 -1
- package/dist/mcp/progress.d.ts +0 -155
- package/dist/mcp/progress.js +0 -252
- package/dist/mcp/progress.js.map +0 -1
- package/dist/mcp/prompts.d.ts +0 -68
- package/dist/mcp/prompts.js +0 -129
- package/dist/mcp/prompts.js.map +0 -1
- package/dist/mcp/provider-mcp-loader.d.ts +0 -130
- package/dist/mcp/provider-mcp-loader.js +0 -292
- package/dist/mcp/provider-mcp-loader.js.map +0 -1
- package/dist/mcp/reconnection.d.ts +0 -101
- package/dist/mcp/reconnection.js +0 -253
- package/dist/mcp/reconnection.js.map +0 -1
- package/dist/mcp/registry.d.ts +0 -75
- package/dist/mcp/registry.js +0 -276
- package/dist/mcp/registry.js.map +0 -1
- package/dist/mcp/resources.d.ts +0 -58
- package/dist/mcp/resources.js +0 -144
- package/dist/mcp/resources.js.map +0 -1
- package/dist/mcp/schema-validator.d.ts +0 -82
- package/dist/mcp/schema-validator.js +0 -161
- package/dist/mcp/schema-validator.js.map +0 -1
- package/dist/mcp/ssrf-protection.d.ts +0 -86
- package/dist/mcp/ssrf-protection.js +0 -311
- package/dist/mcp/ssrf-protection.js.map +0 -1
- package/dist/mcp/subscriptions.d.ts +0 -168
- package/dist/mcp/subscriptions.js +0 -248
- package/dist/mcp/subscriptions.js.map +0 -1
- package/dist/mcp/templates.d.ts +0 -52
- package/dist/mcp/templates.js +0 -627
- package/dist/mcp/templates.js.map +0 -1
- package/dist/mcp/transports.d.ts +0 -80
- package/dist/mcp/transports.js +0 -237
- package/dist/mcp/transports.js.map +0 -1
- package/dist/mcp/type-safety.d.ts +0 -225
- package/dist/mcp/type-safety.js +0 -237
- package/dist/mcp/type-safety.js.map +0 -1
- package/dist/mcp/validation.d.ts +0 -29
- package/dist/mcp/validation.js +0 -339
- package/dist/mcp/validation.js.map +0 -1
- package/dist/mcp/zai-detector.d.ts +0 -63
- package/dist/mcp/zai-detector.js +0 -193
- package/dist/mcp/zai-detector.js.map +0 -1
- package/dist/mcp/zai-templates.d.ts +0 -90
- package/dist/mcp/zai-templates.js +0 -157
- package/dist/mcp/zai-templates.js.map +0 -1
- package/dist/memory/context-generator.d.ts +0 -84
- package/dist/memory/context-generator.js +0 -546
- package/dist/memory/context-generator.js.map +0 -1
- package/dist/memory/context-injector.d.ts +0 -97
- package/dist/memory/context-injector.js +0 -159
- package/dist/memory/context-injector.js.map +0 -1
- package/dist/memory/context-store.d.ts +0 -103
- package/dist/memory/context-store.js +0 -264
- package/dist/memory/context-store.js.map +0 -1
- package/dist/memory/index.d.ts +0 -43
- package/dist/memory/index.js +0 -49
- package/dist/memory/index.js.map +0 -1
- package/dist/memory/provider-context-store.d.ts +0 -127
- package/dist/memory/provider-context-store.js +0 -385
- package/dist/memory/provider-context-store.js.map +0 -1
- package/dist/memory/schemas.d.ts +0 -118
- package/dist/memory/schemas.js +0 -106
- package/dist/memory/schemas.js.map +0 -1
- package/dist/memory/stats-collector.d.ts +0 -73
- package/dist/memory/stats-collector.js +0 -170
- package/dist/memory/stats-collector.js.map +0 -1
- package/dist/memory/types.d.ts +0 -177
- package/dist/memory/types.js +0 -73
- package/dist/memory/types.js.map +0 -1
- package/dist/permissions/index.d.ts +0 -6
- package/dist/permissions/index.js +0 -7
- package/dist/permissions/index.js.map +0 -1
- package/dist/permissions/permission-manager.d.ts +0 -149
- package/dist/permissions/permission-manager.js +0 -410
- package/dist/permissions/permission-manager.js.map +0 -1
- package/dist/planner/dependency-resolver.d.ts +0 -72
- package/dist/planner/dependency-resolver.js +0 -272
- package/dist/planner/dependency-resolver.js.map +0 -1
- package/dist/planner/index.d.ts +0 -12
- package/dist/planner/index.js +0 -28
- package/dist/planner/index.js.map +0 -1
- package/dist/planner/plan-generator.d.ts +0 -74
- package/dist/planner/plan-generator.js +0 -244
- package/dist/planner/plan-generator.js.map +0 -1
- package/dist/planner/plan-storage.d.ts +0 -113
- package/dist/planner/plan-storage.js +0 -398
- package/dist/planner/plan-storage.js.map +0 -1
- package/dist/planner/prompts/planning-prompt.d.ts +0 -62
- package/dist/planner/prompts/planning-prompt.js +0 -414
- package/dist/planner/prompts/planning-prompt.js.map +0 -1
- package/dist/planner/task-planner.d.ts +0 -139
- package/dist/planner/task-planner.js +0 -532
- package/dist/planner/task-planner.js.map +0 -1
- package/dist/planner/token-estimator.d.ts +0 -63
- package/dist/planner/token-estimator.js +0 -295
- package/dist/planner/token-estimator.js.map +0 -1
- package/dist/planner/types.d.ts +0 -425
- package/dist/planner/types.js +0 -213
- package/dist/planner/types.js.map +0 -1
- package/dist/provider/config.d.ts +0 -227
- package/dist/provider/config.js +0 -430
- package/dist/provider/config.js.map +0 -1
- package/dist/schemas/api-schemas.d.ts +0 -45
- package/dist/schemas/api-schemas.js +0 -129
- package/dist/schemas/api-schemas.js.map +0 -1
- package/dist/schemas/confirmation-schemas.d.ts +0 -39
- package/dist/schemas/confirmation-schemas.js +0 -48
- package/dist/schemas/confirmation-schemas.js.map +0 -1
- package/dist/schemas/index-unified.d.ts +0 -12
- package/dist/schemas/index-unified.js +0 -17
- package/dist/schemas/index-unified.js.map +0 -1
- package/dist/schemas/index.d.ts +0 -83
- package/dist/schemas/index.js +0 -139
- package/dist/schemas/index.js.map +0 -1
- package/dist/schemas/settings-schemas.d.ts +0 -186
- package/dist/schemas/settings-schemas.js +0 -324
- package/dist/schemas/settings-schemas.js.map +0 -1
- package/dist/schemas/tool-schemas.d.ts +0 -127
- package/dist/schemas/tool-schemas.js +0 -84
- package/dist/schemas/tool-schemas.js.map +0 -1
- package/dist/schemas/yaml-schemas.d.ts +0 -231
- package/dist/schemas/yaml-schemas.js +0 -199
- package/dist/schemas/yaml-schemas.js.map +0 -1
- package/dist/sdk/errors.d.ts +0 -100
- package/dist/sdk/errors.js +0 -138
- package/dist/sdk/errors.js.map +0 -1
- package/dist/sdk/index.d.ts +0 -901
- package/dist/sdk/index.js +0 -1272
- package/dist/sdk/index.js.map +0 -1
- package/dist/sdk/progress-reporter.d.ts +0 -123
- package/dist/sdk/progress-reporter.js +0 -220
- package/dist/sdk/progress-reporter.js.map +0 -1
- package/dist/sdk/testing.d.ts +0 -427
- package/dist/sdk/testing.js +0 -725
- package/dist/sdk/testing.js.map +0 -1
- package/dist/sdk/tool-registry.d.ts +0 -194
- package/dist/sdk/tool-registry.js +0 -326
- package/dist/sdk/tool-registry.js.map +0 -1
- package/dist/sdk/types.d.ts +0 -53
- package/dist/sdk/types.js +0 -8
- package/dist/sdk/types.js.map +0 -1
- package/dist/sdk/unified-logger.d.ts +0 -173
- package/dist/sdk/unified-logger.js +0 -327
- package/dist/sdk/unified-logger.js.map +0 -1
- package/dist/sdk/version.d.ts +0 -163
- package/dist/sdk/version.js +0 -205
- package/dist/sdk/version.js.map +0 -1
- package/dist/tools/ask-user.d.ts +0 -126
- package/dist/tools/ask-user.js +0 -290
- package/dist/tools/ask-user.js.map +0 -1
- package/dist/tools/ax-agent.d.ts +0 -71
- package/dist/tools/ax-agent.js +0 -283
- package/dist/tools/ax-agent.js.map +0 -1
- package/dist/tools/bash-output.d.ts +0 -25
- package/dist/tools/bash-output.js +0 -146
- package/dist/tools/bash-output.js.map +0 -1
- package/dist/tools/bash.d.ts +0 -67
- package/dist/tools/bash.js +0 -522
- package/dist/tools/bash.js.map +0 -1
- package/dist/tools/confirmation-tool.d.ts +0 -16
- package/dist/tools/confirmation-tool.js +0 -76
- package/dist/tools/confirmation-tool.js.map +0 -1
- package/dist/tools/definitions/ask-user.d.ts +0 -8
- package/dist/tools/definitions/ask-user.js +0 -168
- package/dist/tools/definitions/ask-user.js.map +0 -1
- package/dist/tools/definitions/ax-agent.d.ts +0 -8
- package/dist/tools/definitions/ax-agent.js +0 -276
- package/dist/tools/definitions/ax-agent.js.map +0 -1
- package/dist/tools/definitions/bash-output.d.ts +0 -7
- package/dist/tools/definitions/bash-output.js +0 -78
- package/dist/tools/definitions/bash-output.js.map +0 -1
- package/dist/tools/definitions/bash.d.ts +0 -8
- package/dist/tools/definitions/bash.js +0 -152
- package/dist/tools/definitions/bash.js.map +0 -1
- package/dist/tools/definitions/create-file.d.ts +0 -7
- package/dist/tools/definitions/create-file.js +0 -129
- package/dist/tools/definitions/create-file.js.map +0 -1
- package/dist/tools/definitions/design.d.ts +0 -12
- package/dist/tools/definitions/design.js +0 -368
- package/dist/tools/definitions/design.js.map +0 -1
- package/dist/tools/definitions/index.d.ts +0 -49
- package/dist/tools/definitions/index.js +0 -87
- package/dist/tools/definitions/index.js.map +0 -1
- package/dist/tools/definitions/multi-edit.d.ts +0 -7
- package/dist/tools/definitions/multi-edit.js +0 -123
- package/dist/tools/definitions/multi-edit.js.map +0 -1
- package/dist/tools/definitions/search.d.ts +0 -7
- package/dist/tools/definitions/search.js +0 -159
- package/dist/tools/definitions/search.js.map +0 -1
- package/dist/tools/definitions/str-replace-editor.d.ts +0 -7
- package/dist/tools/definitions/str-replace-editor.js +0 -145
- package/dist/tools/definitions/str-replace-editor.js.map +0 -1
- package/dist/tools/definitions/todo.d.ts +0 -8
- package/dist/tools/definitions/todo.js +0 -261
- package/dist/tools/definitions/todo.js.map +0 -1
- package/dist/tools/definitions/view-file.d.ts +0 -7
- package/dist/tools/definitions/view-file.js +0 -111
- package/dist/tools/definitions/view-file.js.map +0 -1
- package/dist/tools/design-tool.d.ts +0 -68
- package/dist/tools/design-tool.js +0 -299
- package/dist/tools/design-tool.js.map +0 -1
- package/dist/tools/format-generators.d.ts +0 -62
- package/dist/tools/format-generators.js +0 -291
- package/dist/tools/format-generators.js.map +0 -1
- package/dist/tools/index.d.ts +0 -8
- package/dist/tools/index.js +0 -11
- package/dist/tools/index.js.map +0 -1
- package/dist/tools/priority-registry.d.ts +0 -124
- package/dist/tools/priority-registry.js +0 -401
- package/dist/tools/priority-registry.js.map +0 -1
- package/dist/tools/priority.d.ts +0 -158
- package/dist/tools/priority.js +0 -350
- package/dist/tools/priority.js.map +0 -1
- package/dist/tools/registry.d.ts +0 -146
- package/dist/tools/registry.js +0 -171
- package/dist/tools/registry.js.map +0 -1
- package/dist/tools/search.d.ts +0 -85
- package/dist/tools/search.js +0 -430
- package/dist/tools/search.js.map +0 -1
- package/dist/tools/text-editor.d.ts +0 -87
- package/dist/tools/text-editor.js +0 -1369
- package/dist/tools/text-editor.js.map +0 -1
- package/dist/tools/todo-tool.d.ts +0 -20
- package/dist/tools/todo-tool.js +0 -186
- package/dist/tools/todo-tool.js.map +0 -1
- package/dist/tools/types.d.ts +0 -175
- package/dist/tools/types.js +0 -11
- package/dist/tools/types.js.map +0 -1
- package/dist/types/index.d.ts +0 -30
- package/dist/types/index.js +0 -2
- package/dist/types/index.js.map +0 -1
- package/dist/types/project-analysis.d.ts +0 -84
- package/dist/types/project-analysis.js +0 -5
- package/dist/types/project-analysis.js.map +0 -1
- package/dist/types/template.d.ts +0 -53
- package/dist/types/template.js +0 -5
- package/dist/types/template.js.map +0 -1
- package/dist/ui/app.d.ts +0 -7
- package/dist/ui/app.js +0 -102
- package/dist/ui/app.js.map +0 -1
- package/dist/ui/components/api-key-input.d.ts +0 -7
- package/dist/ui/components/api-key-input.js +0 -92
- package/dist/ui/components/api-key-input.js.map +0 -1
- package/dist/ui/components/chat-history.d.ts +0 -12
- package/dist/ui/components/chat-history.js +0 -391
- package/dist/ui/components/chat-history.js.map +0 -1
- package/dist/ui/components/chat-input.d.ts +0 -13
- package/dist/ui/components/chat-input.js +0 -179
- package/dist/ui/components/chat-input.js.map +0 -1
- package/dist/ui/components/chat-interface.d.ts +0 -11
- package/dist/ui/components/chat-interface.js +0 -830
- package/dist/ui/components/chat-interface.js.map +0 -1
- package/dist/ui/components/collapsible-tool-result.d.ts +0 -42
- package/dist/ui/components/collapsible-tool-result.js +0 -216
- package/dist/ui/components/collapsible-tool-result.js.map +0 -1
- package/dist/ui/components/command-suggestions.d.ts +0 -29
- package/dist/ui/components/command-suggestions.js +0 -88
- package/dist/ui/components/command-suggestions.js.map +0 -1
- package/dist/ui/components/confirmation-dialog.d.ts +0 -11
- package/dist/ui/components/confirmation-dialog.js +0 -100
- package/dist/ui/components/confirmation-dialog.js.map +0 -1
- package/dist/ui/components/context-breakdown.d.ts +0 -23
- package/dist/ui/components/context-breakdown.js +0 -124
- package/dist/ui/components/context-breakdown.js.map +0 -1
- package/dist/ui/components/diff-renderer.d.ts +0 -13
- package/dist/ui/components/diff-renderer.js +0 -192
- package/dist/ui/components/diff-renderer.js.map +0 -1
- package/dist/ui/components/index.d.ts +0 -18
- package/dist/ui/components/index.js +0 -20
- package/dist/ui/components/index.js.map +0 -1
- package/dist/ui/components/keyboard-help.d.ts +0 -17
- package/dist/ui/components/keyboard-help.js +0 -122
- package/dist/ui/components/keyboard-help.js.map +0 -1
- package/dist/ui/components/keyboard-hints.d.ts +0 -35
- package/dist/ui/components/keyboard-hints.js +0 -142
- package/dist/ui/components/keyboard-hints.js.map +0 -1
- package/dist/ui/components/loading-spinner.d.ts +0 -9
- package/dist/ui/components/loading-spinner.js +0 -120
- package/dist/ui/components/loading-spinner.js.map +0 -1
- package/dist/ui/components/mcp-dashboard.d.ts +0 -15
- package/dist/ui/components/mcp-dashboard.js +0 -520
- package/dist/ui/components/mcp-dashboard.js.map +0 -1
- package/dist/ui/components/mcp-status.d.ts +0 -5
- package/dist/ui/components/mcp-status.js +0 -58
- package/dist/ui/components/mcp-status.js.map +0 -1
- package/dist/ui/components/model-selection.d.ts +0 -12
- package/dist/ui/components/model-selection.js +0 -17
- package/dist/ui/components/model-selection.js.map +0 -1
- package/dist/ui/components/phase-progress.d.ts +0 -21
- package/dist/ui/components/phase-progress.js +0 -185
- package/dist/ui/components/phase-progress.js.map +0 -1
- package/dist/ui/components/question-dialog.d.ts +0 -17
- package/dist/ui/components/question-dialog.js +0 -181
- package/dist/ui/components/question-dialog.js.map +0 -1
- package/dist/ui/components/quick-actions.d.ts +0 -12
- package/dist/ui/components/quick-actions.js +0 -171
- package/dist/ui/components/quick-actions.js.map +0 -1
- package/dist/ui/components/reasoning-display.d.ts +0 -36
- package/dist/ui/components/reasoning-display.js +0 -46
- package/dist/ui/components/reasoning-display.js.map +0 -1
- package/dist/ui/components/status-bar.d.ts +0 -47
- package/dist/ui/components/status-bar.js +0 -310
- package/dist/ui/components/status-bar.js.map +0 -1
- package/dist/ui/components/subagent-monitor.d.ts +0 -41
- package/dist/ui/components/subagent-monitor.js +0 -122
- package/dist/ui/components/subagent-monitor.js.map +0 -1
- package/dist/ui/components/toast-notification.d.ts +0 -197
- package/dist/ui/components/toast-notification.js +0 -190
- package/dist/ui/components/toast-notification.js.map +0 -1
- package/dist/ui/components/tool-group-display.d.ts +0 -19
- package/dist/ui/components/tool-group-display.js +0 -222
- package/dist/ui/components/tool-group-display.js.map +0 -1
- package/dist/ui/components/virtualized-chat-history.d.ts +0 -33
- package/dist/ui/components/virtualized-chat-history.js +0 -182
- package/dist/ui/components/virtualized-chat-history.js.map +0 -1
- package/dist/ui/components/welcome-panel.d.ts +0 -11
- package/dist/ui/components/welcome-panel.js +0 -225
- package/dist/ui/components/welcome-panel.js.map +0 -1
- package/dist/ui/hooks/use-chat-reducer.d.ts +0 -69
- package/dist/ui/hooks/use-chat-reducer.js +0 -118
- package/dist/ui/hooks/use-chat-reducer.js.map +0 -1
- package/dist/ui/hooks/use-enhanced-input.d.ts +0 -53
- package/dist/ui/hooks/use-enhanced-input.js +0 -1275
- package/dist/ui/hooks/use-enhanced-input.js.map +0 -1
- package/dist/ui/hooks/use-input-handler.d.ts +0 -79
- package/dist/ui/hooks/use-input-handler.js +0 -2251
- package/dist/ui/hooks/use-input-handler.js.map +0 -1
- package/dist/ui/hooks/use-input-history.d.ts +0 -9
- package/dist/ui/hooks/use-input-history.js +0 -168
- package/dist/ui/hooks/use-input-history.js.map +0 -1
- package/dist/ui/shared/max-sized-box.d.ts +0 -17
- package/dist/ui/shared/max-sized-box.js +0 -14
- package/dist/ui/shared/max-sized-box.js.map +0 -1
- package/dist/ui/themes/index.d.ts +0 -5
- package/dist/ui/themes/index.js +0 -5
- package/dist/ui/themes/index.js.map +0 -1
- package/dist/ui/themes/theme-registry.d.ts +0 -55
- package/dist/ui/themes/theme-registry.js +0 -202
- package/dist/ui/themes/theme-registry.js.map +0 -1
- package/dist/ui/utils/bracketed-paste-handler.d.ts +0 -97
- package/dist/ui/utils/bracketed-paste-handler.js +0 -322
- package/dist/ui/utils/bracketed-paste-handler.js.map +0 -1
- package/dist/ui/utils/change-summarizer.d.ts +0 -20
- package/dist/ui/utils/change-summarizer.js +0 -282
- package/dist/ui/utils/change-summarizer.js.map +0 -1
- package/dist/ui/utils/code-colorizer.d.ts +0 -9
- package/dist/ui/utils/code-colorizer.js +0 -13
- package/dist/ui/utils/code-colorizer.js.map +0 -1
- package/dist/ui/utils/colors.d.ts +0 -41
- package/dist/ui/utils/colors.js +0 -80
- package/dist/ui/utils/colors.js.map +0 -1
- package/dist/ui/utils/image-handler.d.ts +0 -29
- package/dist/ui/utils/image-handler.js +0 -129
- package/dist/ui/utils/image-handler.js.map +0 -1
- package/dist/ui/utils/markdown-renderer.d.ts +0 -4
- package/dist/ui/utils/markdown-renderer.js +0 -40
- package/dist/ui/utils/markdown-renderer.js.map +0 -1
- package/dist/ui/utils/semantic-action-detector.d.ts +0 -49
- package/dist/ui/utils/semantic-action-detector.js +0 -339
- package/dist/ui/utils/semantic-action-detector.js.map +0 -1
- package/dist/ui/utils/tool-grouper.d.ts +0 -94
- package/dist/ui/utils/tool-grouper.js +0 -618
- package/dist/ui/utils/tool-grouper.js.map +0 -1
- package/dist/utils/api-error.d.ts +0 -61
- package/dist/utils/api-error.js +0 -176
- package/dist/utils/api-error.js.map +0 -1
- package/dist/utils/audit-logger.d.ts +0 -206
- package/dist/utils/audit-logger.js +0 -286
- package/dist/utils/audit-logger.js.map +0 -1
- package/dist/utils/auto-accept-logger.d.ts +0 -175
- package/dist/utils/auto-accept-logger.js +0 -423
- package/dist/utils/auto-accept-logger.js.map +0 -1
- package/dist/utils/automatosx-detector.d.ts +0 -19
- package/dist/utils/automatosx-detector.js +0 -52
- package/dist/utils/automatosx-detector.js.map +0 -1
- package/dist/utils/background-task-manager.d.ts +0 -114
- package/dist/utils/background-task-manager.js +0 -470
- package/dist/utils/background-task-manager.js.map +0 -1
- package/dist/utils/cache.d.ts +0 -77
- package/dist/utils/cache.js +0 -180
- package/dist/utils/cache.js.map +0 -1
- package/dist/utils/command-security.d.ts +0 -85
- package/dist/utils/command-security.js +0 -210
- package/dist/utils/command-security.js.map +0 -1
- package/dist/utils/config-loader.d.ts +0 -190
- package/dist/utils/config-loader.js +0 -108
- package/dist/utils/config-loader.js.map +0 -1
- package/dist/utils/confirmation-service.d.ts +0 -51
- package/dist/utils/confirmation-service.js +0 -220
- package/dist/utils/confirmation-service.js.map +0 -1
- package/dist/utils/console-messenger.d.ts +0 -80
- package/dist/utils/console-messenger.js +0 -142
- package/dist/utils/console-messenger.js.map +0 -1
- package/dist/utils/custom-instructions.d.ts +0 -1
- package/dist/utils/custom-instructions.js +0 -24
- package/dist/utils/custom-instructions.js.map +0 -1
- package/dist/utils/encryption.d.ts +0 -86
- package/dist/utils/encryption.js +0 -236
- package/dist/utils/encryption.js.map +0 -1
- package/dist/utils/enhanced-error-messages.d.ts +0 -33
- package/dist/utils/enhanced-error-messages.js +0 -440
- package/dist/utils/enhanced-error-messages.js.map +0 -1
- package/dist/utils/error-handler.d.ts +0 -65
- package/dist/utils/error-handler.js +0 -148
- package/dist/utils/error-handler.js.map +0 -1
- package/dist/utils/error-translator.d.ts +0 -25
- package/dist/utils/error-translator.js +0 -203
- package/dist/utils/error-translator.js.map +0 -1
- package/dist/utils/external-editor.d.ts +0 -47
- package/dist/utils/external-editor.js +0 -179
- package/dist/utils/external-editor.js.map +0 -1
- package/dist/utils/file-cache.d.ts +0 -148
- package/dist/utils/file-cache.js +0 -413
- package/dist/utils/file-cache.js.map +0 -1
- package/dist/utils/file-lock.d.ts +0 -141
- package/dist/utils/file-lock.js +0 -554
- package/dist/utils/file-lock.js.map +0 -1
- package/dist/utils/file-mentions.d.ts +0 -68
- package/dist/utils/file-mentions.js +0 -225
- package/dist/utils/file-mentions.js.map +0 -1
- package/dist/utils/history-manager.d.ts +0 -52
- package/dist/utils/history-manager.js +0 -211
- package/dist/utils/history-manager.js.map +0 -1
- package/dist/utils/history-migration.d.ts +0 -9
- package/dist/utils/history-migration.js +0 -37
- package/dist/utils/history-migration.js.map +0 -1
- package/dist/utils/image-processor.d.ts +0 -33
- package/dist/utils/image-processor.js +0 -124
- package/dist/utils/image-processor.js.map +0 -1
- package/dist/utils/index.d.ts +0 -92
- package/dist/utils/index.js +0 -111
- package/dist/utils/index.js.map +0 -1
- package/dist/utils/init-previewer.d.ts +0 -56
- package/dist/utils/init-previewer.js +0 -239
- package/dist/utils/init-previewer.js.map +0 -1
- package/dist/utils/init-validator.d.ts +0 -65
- package/dist/utils/init-validator.js +0 -252
- package/dist/utils/init-validator.js.map +0 -1
- package/dist/utils/input-sanitizer.d.ts +0 -210
- package/dist/utils/input-sanitizer.js +0 -362
- package/dist/utils/input-sanitizer.js.map +0 -1
- package/dist/utils/instruction-generator.d.ts +0 -21
- package/dist/utils/instruction-generator.js +0 -233
- package/dist/utils/instruction-generator.js.map +0 -1
- package/dist/utils/json-utils.d.ts +0 -72
- package/dist/utils/json-utils.js +0 -226
- package/dist/utils/json-utils.js.map +0 -1
- package/dist/utils/llm-optimized-instruction-generator.d.ts +0 -36
- package/dist/utils/llm-optimized-instruction-generator.js +0 -365
- package/dist/utils/llm-optimized-instruction-generator.js.map +0 -1
- package/dist/utils/message-optimizer.d.ts +0 -100
- package/dist/utils/message-optimizer.js +0 -297
- package/dist/utils/message-optimizer.js.map +0 -1
- package/dist/utils/onboarding-manager.d.ts +0 -45
- package/dist/utils/onboarding-manager.js +0 -131
- package/dist/utils/onboarding-manager.js.map +0 -1
- package/dist/utils/parallel-analyzer.d.ts +0 -123
- package/dist/utils/parallel-analyzer.js +0 -241
- package/dist/utils/parallel-analyzer.js.map +0 -1
- package/dist/utils/paste-utils.d.ts +0 -99
- package/dist/utils/paste-utils.js +0 -295
- package/dist/utils/paste-utils.js.map +0 -1
- package/dist/utils/path-helpers.d.ts +0 -8
- package/dist/utils/path-helpers.js +0 -35
- package/dist/utils/path-helpers.js.map +0 -1
- package/dist/utils/path-security.d.ts +0 -92
- package/dist/utils/path-security.js +0 -300
- package/dist/utils/path-security.js.map +0 -1
- package/dist/utils/path-utils.d.ts +0 -83
- package/dist/utils/path-utils.js +0 -122
- package/dist/utils/path-utils.js.map +0 -1
- package/dist/utils/path-validator.d.ts +0 -66
- package/dist/utils/path-validator.js +0 -141
- package/dist/utils/path-validator.js.map +0 -1
- package/dist/utils/performance.d.ts +0 -74
- package/dist/utils/performance.js +0 -133
- package/dist/utils/performance.js.map +0 -1
- package/dist/utils/process-pool.d.ts +0 -109
- package/dist/utils/process-pool.js +0 -332
- package/dist/utils/process-pool.js.map +0 -1
- package/dist/utils/progress-tracker.d.ts +0 -51
- package/dist/utils/progress-tracker.js +0 -152
- package/dist/utils/progress-tracker.js.map +0 -1
- package/dist/utils/project-analyzer.d.ts +0 -49
- package/dist/utils/project-analyzer.js +0 -396
- package/dist/utils/project-analyzer.js.map +0 -1
- package/dist/utils/prompt-builder.d.ts +0 -14
- package/dist/utils/prompt-builder.js +0 -100
- package/dist/utils/prompt-builder.js.map +0 -1
- package/dist/utils/provider-context.d.ts +0 -243
- package/dist/utils/provider-context.js +0 -421
- package/dist/utils/provider-context.js.map +0 -1
- package/dist/utils/provider-file-cache.d.ts +0 -91
- package/dist/utils/provider-file-cache.js +0 -165
- package/dist/utils/provider-file-cache.js.map +0 -1
- package/dist/utils/provider-settings.d.ts +0 -181
- package/dist/utils/provider-settings.js +0 -450
- package/dist/utils/provider-settings.js.map +0 -1
- package/dist/utils/rate-limiter.d.ts +0 -222
- package/dist/utils/rate-limiter.js +0 -338
- package/dist/utils/rate-limiter.js.map +0 -1
- package/dist/utils/retry-helper.d.ts +0 -81
- package/dist/utils/retry-helper.js +0 -244
- package/dist/utils/retry-helper.js.map +0 -1
- package/dist/utils/safety-rules.d.ts +0 -64
- package/dist/utils/safety-rules.js +0 -225
- package/dist/utils/safety-rules.js.map +0 -1
- package/dist/utils/settings-manager.d.ts +0 -256
- package/dist/utils/settings-manager.js +0 -967
- package/dist/utils/settings-manager.js.map +0 -1
- package/dist/utils/setup-validator.d.ts +0 -47
- package/dist/utils/setup-validator.js +0 -304
- package/dist/utils/setup-validator.js.map +0 -1
- package/dist/utils/string-utils.d.ts +0 -19
- package/dist/utils/string-utils.js +0 -28
- package/dist/utils/string-utils.js.map +0 -1
- package/dist/utils/template-manager.d.ts +0 -62
- package/dist/utils/template-manager.js +0 -366
- package/dist/utils/template-manager.js.map +0 -1
- package/dist/utils/text-utils.d.ts +0 -82
- package/dist/utils/text-utils.js +0 -203
- package/dist/utils/text-utils.js.map +0 -1
- package/dist/utils/token-counter.d.ts +0 -76
- package/dist/utils/token-counter.js +0 -231
- package/dist/utils/token-counter.js.map +0 -1
- package/dist/utils/usage-tracker.d.ts +0 -78
- package/dist/utils/usage-tracker.js +0 -126
- package/dist/utils/usage-tracker.js.map +0 -1
- package/dist/utils/version.d.ts +0 -14
- package/dist/utils/version.js +0 -70
- package/dist/utils/version.js.map +0 -1
|
@@ -1,406 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Context management for handling long conversations
|
|
3
|
-
* Prevents context window overflow through intelligent pruning
|
|
4
|
-
*/
|
|
5
|
-
import { EventEmitter } from 'events';
|
|
6
|
-
import { GLM_MODELS, TIMEOUT_CONFIG } from '../constants.js';
|
|
7
|
-
import * as crypto from 'crypto';
|
|
8
|
-
export class ContextManager extends EventEmitter {
|
|
9
|
-
model;
|
|
10
|
-
contextWindow;
|
|
11
|
-
pruneThreshold;
|
|
12
|
-
hardLimit;
|
|
13
|
-
keepRecentToolRounds;
|
|
14
|
-
keepFirstMessages;
|
|
15
|
-
reservedTokens;
|
|
16
|
-
// Memoization cache for token counting
|
|
17
|
-
// Use Map with JSON serialized messages as key for cache lookup
|
|
18
|
-
tokenCache = new Map();
|
|
19
|
-
CACHE_TTL = 60000; // 1 minute TTL
|
|
20
|
-
MAX_CACHE_SIZE = 100; // Maximum cache entries before cleanup
|
|
21
|
-
cleanupTimer = null;
|
|
22
|
-
cleanupInProgress = false; // RACE CONDITION FIX: Lock to prevent concurrent cleanup
|
|
23
|
-
constructor(options) {
|
|
24
|
-
super(); // Initialize EventEmitter
|
|
25
|
-
this.model = options.model;
|
|
26
|
-
const modelConfig = GLM_MODELS[this.model];
|
|
27
|
-
this.contextWindow = modelConfig?.contextWindow || 128000;
|
|
28
|
-
this.pruneThreshold = options.pruneThreshold || 0.75;
|
|
29
|
-
this.hardLimit = options.hardLimit || 0.95;
|
|
30
|
-
this.keepRecentToolRounds = options.keepRecentToolRounds || 8;
|
|
31
|
-
this.keepFirstMessages = options.keepFirstMessages || 2;
|
|
32
|
-
this.reservedTokens = options.reservedTokens || 3000;
|
|
33
|
-
// Periodic cleanup to prevent memory leak (configurable interval)
|
|
34
|
-
this.cleanupTimer = setInterval(() => {
|
|
35
|
-
this.cleanupCache();
|
|
36
|
-
}, TIMEOUT_CONFIG.CONTEXT_CLEANUP_INTERVAL);
|
|
37
|
-
// Don't keep process alive just for cleanup
|
|
38
|
-
this.cleanupTimer.unref();
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Memoized token counting with cache and lazy cleanup
|
|
42
|
-
* Uses message content hash as cache key
|
|
43
|
-
*/
|
|
44
|
-
getCachedTokenCount(messages, tokenCounter) {
|
|
45
|
-
// Create cache key from message array
|
|
46
|
-
// Use a simplified hash based on message count, roles, and content lengths
|
|
47
|
-
const cacheKey = this.createMessageCacheKey(messages);
|
|
48
|
-
// Lazy cleanup: check if cached entry exists and is valid
|
|
49
|
-
const now = Date.now();
|
|
50
|
-
const cached = this.tokenCache.get(cacheKey);
|
|
51
|
-
if (cached) {
|
|
52
|
-
if (now - cached.timestamp < this.CACHE_TTL) {
|
|
53
|
-
return cached.count;
|
|
54
|
-
}
|
|
55
|
-
else {
|
|
56
|
-
// Expired, remove it
|
|
57
|
-
this.tokenCache.delete(cacheKey);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
// Perform incremental cache cleanup if cache is getting too large
|
|
61
|
-
// Instead of sorting all entries, just remove oldest 10-20% incrementally
|
|
62
|
-
if (this.tokenCache.size >= this.MAX_CACHE_SIZE) {
|
|
63
|
-
// RACE CONDITION FIX: Skip if cleanup already in progress
|
|
64
|
-
if (!this.cleanupInProgress) {
|
|
65
|
-
this.cleanupInProgress = true;
|
|
66
|
-
try {
|
|
67
|
-
this.cleanupCache();
|
|
68
|
-
// If still over limit after cleanup, evict oldest entries to 90% capacity
|
|
69
|
-
if (this.tokenCache.size >= this.MAX_CACHE_SIZE) {
|
|
70
|
-
// Remove entries to get back to 90% capacity for headroom
|
|
71
|
-
const targetSize = Math.floor(this.MAX_CACHE_SIZE * 0.9);
|
|
72
|
-
// CONCURRENCY FIX: Snapshot entries before calculating removals
|
|
73
|
-
// to prevent iterator invalidation from concurrent modifications
|
|
74
|
-
const entries = Array.from(this.tokenCache.entries());
|
|
75
|
-
const entriesToRemove = entries.length - targetSize;
|
|
76
|
-
// Delete using snapshot to avoid race conditions
|
|
77
|
-
for (let i = 0; i < Math.min(entriesToRemove, entries.length); i++) {
|
|
78
|
-
this.tokenCache.delete(entries[i][0]);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
finally {
|
|
83
|
-
this.cleanupInProgress = false;
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
// Count tokens and cache result
|
|
88
|
-
const count = tokenCounter.countMessageTokens(messages);
|
|
89
|
-
this.tokenCache.set(cacheKey, { count, timestamp: now });
|
|
90
|
-
return count;
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* Create a cache key from messages
|
|
94
|
-
* Uses SHA-256 hash of full content to prevent collisions
|
|
95
|
-
* More reliable than content sampling
|
|
96
|
-
*/
|
|
97
|
-
createMessageCacheKey(messages) {
|
|
98
|
-
// Serialize messages to a stable string representation
|
|
99
|
-
const messageSignature = messages.map(m => {
|
|
100
|
-
// Get full content
|
|
101
|
-
const content = typeof m.content === 'string'
|
|
102
|
-
? m.content
|
|
103
|
-
: Array.isArray(m.content)
|
|
104
|
-
? m.content.map(part => part.type === 'text' ? part.text : '').join('')
|
|
105
|
-
: '';
|
|
106
|
-
// Include tool calls if present
|
|
107
|
-
const toolCalls = (m.role === 'assistant' || m.role === 'tool') && 'tool_calls' in m && m.tool_calls
|
|
108
|
-
? JSON.stringify(m.tool_calls)
|
|
109
|
-
: '';
|
|
110
|
-
// Create deterministic string for this message
|
|
111
|
-
return `${m.role}|${content}|${toolCalls}`;
|
|
112
|
-
}).join('||');
|
|
113
|
-
// Hash the signature for efficient cache lookup
|
|
114
|
-
return crypto.createHash('sha256').update(messageSignature).digest('hex').substring(0, 32);
|
|
115
|
-
}
|
|
116
|
-
/**
|
|
117
|
-
* Clean up expired cache entries
|
|
118
|
-
*/
|
|
119
|
-
cleanupCache() {
|
|
120
|
-
const now = Date.now();
|
|
121
|
-
for (const [key, value] of this.tokenCache.entries()) {
|
|
122
|
-
if (now - value.timestamp > this.CACHE_TTL) {
|
|
123
|
-
this.tokenCache.delete(key);
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
/**
|
|
128
|
-
* Clear the token cache (useful for testing)
|
|
129
|
-
*/
|
|
130
|
-
clearCache() {
|
|
131
|
-
this.tokenCache.clear();
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Dispose of resources (cleanup timer, caches)
|
|
135
|
-
*/
|
|
136
|
-
dispose() {
|
|
137
|
-
if (this.cleanupTimer) {
|
|
138
|
-
clearInterval(this.cleanupTimer);
|
|
139
|
-
this.cleanupTimer = null;
|
|
140
|
-
}
|
|
141
|
-
this.tokenCache.clear();
|
|
142
|
-
}
|
|
143
|
-
/**
|
|
144
|
-
* Check if context needs pruning (with caching)
|
|
145
|
-
*/
|
|
146
|
-
shouldPrune(messages, tokenCounter) {
|
|
147
|
-
const currentTokens = this.getCachedTokenCount(messages, tokenCounter);
|
|
148
|
-
const threshold = this.contextWindow * this.pruneThreshold;
|
|
149
|
-
return currentTokens > threshold;
|
|
150
|
-
}
|
|
151
|
-
/**
|
|
152
|
-
* Check if we're approaching hard limit (with caching)
|
|
153
|
-
*/
|
|
154
|
-
isNearHardLimit(messages, tokenCounter) {
|
|
155
|
-
const currentTokens = this.getCachedTokenCount(messages, tokenCounter);
|
|
156
|
-
const limit = this.contextWindow * this.hardLimit;
|
|
157
|
-
return currentTokens > limit;
|
|
158
|
-
}
|
|
159
|
-
/**
|
|
160
|
-
* Get current context usage statistics (with caching)
|
|
161
|
-
*/
|
|
162
|
-
getStats(messages, tokenCounter) {
|
|
163
|
-
const currentTokens = this.getCachedTokenCount(messages, tokenCounter);
|
|
164
|
-
// Changed: Show remaining percentage (counting down from 100%)
|
|
165
|
-
const percentage = 100 - (currentTokens / this.contextWindow) * 100;
|
|
166
|
-
const available = this.contextWindow - currentTokens;
|
|
167
|
-
return {
|
|
168
|
-
currentTokens,
|
|
169
|
-
contextWindow: this.contextWindow,
|
|
170
|
-
percentage: percentage, // Remaining percentage (counts down from 100%)
|
|
171
|
-
available,
|
|
172
|
-
shouldPrune: currentTokens > (this.contextWindow * this.pruneThreshold),
|
|
173
|
-
isNearLimit: currentTokens > (this.contextWindow * this.hardLimit),
|
|
174
|
-
};
|
|
175
|
-
}
|
|
176
|
-
/**
|
|
177
|
-
* Prune messages intelligently to reduce context usage
|
|
178
|
-
* Strategy:
|
|
179
|
-
* 1. Keep system message (always first)
|
|
180
|
-
* 2. Keep first N user messages (important context)
|
|
181
|
-
* 3. Keep last N tool rounds (recent work)
|
|
182
|
-
* 4. Remove old tool results (most verbose, least valuable)
|
|
183
|
-
* 5. Apply sliding window if still over threshold
|
|
184
|
-
*/
|
|
185
|
-
pruneMessages(messages, tokenCounter) {
|
|
186
|
-
// Always keep system message - validate first
|
|
187
|
-
if (messages.length === 0) {
|
|
188
|
-
// Empty messages array - return as-is (edge case protection)
|
|
189
|
-
console.warn('[ContextManager] Cannot prune empty messages array');
|
|
190
|
-
return messages;
|
|
191
|
-
}
|
|
192
|
-
// Check if first message is system message
|
|
193
|
-
if (messages[0].role !== 'system') {
|
|
194
|
-
// Missing system message - log warning but continue with defensive handling
|
|
195
|
-
console.warn('[ContextManager] First message is not system message, proceeding with caution');
|
|
196
|
-
// Don't prune if system message is missing to avoid breaking conversation state
|
|
197
|
-
return messages;
|
|
198
|
-
}
|
|
199
|
-
// If under threshold, no pruning needed
|
|
200
|
-
if (!this.shouldPrune(messages, tokenCounter)) {
|
|
201
|
-
return messages;
|
|
202
|
-
}
|
|
203
|
-
// NEW: Emit event before pruning (so agent can generate summary)
|
|
204
|
-
const currentTokens = this.getCachedTokenCount(messages, tokenCounter);
|
|
205
|
-
this.emit('before_prune', {
|
|
206
|
-
messageCount: messages.length,
|
|
207
|
-
tokenCount: currentTokens,
|
|
208
|
-
messages: [...messages], // Provide copy for summary generation
|
|
209
|
-
});
|
|
210
|
-
const systemMessage = messages[0];
|
|
211
|
-
let workingMessages = messages.slice(1);
|
|
212
|
-
// Step 1: Identify and keep important messages
|
|
213
|
-
const importantMessages = this.identifyImportantMessages(workingMessages);
|
|
214
|
-
// Step 2: Identify tool rounds
|
|
215
|
-
const toolRounds = this.identifyToolRounds(workingMessages);
|
|
216
|
-
// Step 3: Keep recent tool rounds
|
|
217
|
-
const recentRounds = toolRounds.slice(-this.keepRecentToolRounds);
|
|
218
|
-
const recentMessageIndices = new Set(recentRounds.flat());
|
|
219
|
-
// Step 4: Build pruned message list
|
|
220
|
-
const prunedMessages = [systemMessage];
|
|
221
|
-
for (let i = 0; i < workingMessages.length; i++) {
|
|
222
|
-
const message = workingMessages[i];
|
|
223
|
-
// Keep if important or recent
|
|
224
|
-
if (importantMessages.has(i) || recentMessageIndices.has(i)) {
|
|
225
|
-
prunedMessages.push(message);
|
|
226
|
-
}
|
|
227
|
-
// For tool messages, only keep if part of recent rounds
|
|
228
|
-
else if (message.role === 'tool') {
|
|
229
|
-
// Skip old tool results
|
|
230
|
-
continue;
|
|
231
|
-
}
|
|
232
|
-
// Keep user and assistant messages unless they're very old
|
|
233
|
-
else if (message.role === 'user' || message.role === 'assistant') {
|
|
234
|
-
// Keep if in recent half of conversation
|
|
235
|
-
if (i >= workingMessages.length / 2) {
|
|
236
|
-
prunedMessages.push(message);
|
|
237
|
-
}
|
|
238
|
-
}
|
|
239
|
-
}
|
|
240
|
-
// Step 5: Check if still over threshold
|
|
241
|
-
const tokensAfterPruning = tokenCounter.countMessageTokens(prunedMessages);
|
|
242
|
-
// If still over threshold, apply sliding window
|
|
243
|
-
let finalMessages;
|
|
244
|
-
if (tokensAfterPruning > this.contextWindow * this.pruneThreshold) {
|
|
245
|
-
finalMessages = this.applySlidingWindow(prunedMessages, tokenCounter);
|
|
246
|
-
}
|
|
247
|
-
else {
|
|
248
|
-
finalMessages = prunedMessages;
|
|
249
|
-
}
|
|
250
|
-
// NEW: Emit event after pruning
|
|
251
|
-
const afterTokens = tokenCounter.countMessageTokens(finalMessages);
|
|
252
|
-
const beforeCount = messages.length;
|
|
253
|
-
const tokensBefore = currentTokens; // Use the variable from before pruning
|
|
254
|
-
this.emit('after_prune', {
|
|
255
|
-
beforeCount,
|
|
256
|
-
afterCount: finalMessages.length,
|
|
257
|
-
tokensSaved: tokensBefore - afterTokens,
|
|
258
|
-
});
|
|
259
|
-
return finalMessages;
|
|
260
|
-
}
|
|
261
|
-
/**
|
|
262
|
-
* Identify important messages to preserve
|
|
263
|
-
*/
|
|
264
|
-
identifyImportantMessages(messages) {
|
|
265
|
-
const important = new Set();
|
|
266
|
-
// Keep first N user messages (important project context)
|
|
267
|
-
let userMessageCount = 0;
|
|
268
|
-
for (let i = 0; i < messages.length; i++) {
|
|
269
|
-
if (messages[i].role === 'user') {
|
|
270
|
-
if (userMessageCount < this.keepFirstMessages) {
|
|
271
|
-
important.add(i);
|
|
272
|
-
userMessageCount++;
|
|
273
|
-
}
|
|
274
|
-
else {
|
|
275
|
-
break;
|
|
276
|
-
}
|
|
277
|
-
}
|
|
278
|
-
}
|
|
279
|
-
return important;
|
|
280
|
-
}
|
|
281
|
-
/**
|
|
282
|
-
* Identify tool execution rounds
|
|
283
|
-
* A round is: user -> assistant (with tool_calls) -> tool results -> assistant (response)
|
|
284
|
-
*/
|
|
285
|
-
identifyToolRounds(messages) {
|
|
286
|
-
const rounds = [];
|
|
287
|
-
let currentRound = [];
|
|
288
|
-
let inRound = false;
|
|
289
|
-
for (let i = 0; i < messages.length; i++) {
|
|
290
|
-
const message = messages[i];
|
|
291
|
-
// Start of round: assistant with tool_calls
|
|
292
|
-
if (message.role === 'assistant' && 'tool_calls' in message && message.tool_calls && message.tool_calls.length > 0) {
|
|
293
|
-
if (currentRound.length > 0) {
|
|
294
|
-
rounds.push(currentRound);
|
|
295
|
-
}
|
|
296
|
-
currentRound = [i];
|
|
297
|
-
inRound = true;
|
|
298
|
-
}
|
|
299
|
-
// Tool results in round
|
|
300
|
-
else if (inRound && message.role === 'tool') {
|
|
301
|
-
currentRound.push(i);
|
|
302
|
-
}
|
|
303
|
-
// End of round: assistant response without tool_calls
|
|
304
|
-
else if (inRound && message.role === 'assistant' && (!('tool_calls' in message) || !message.tool_calls || message.tool_calls.length === 0)) {
|
|
305
|
-
currentRound.push(i);
|
|
306
|
-
rounds.push(currentRound);
|
|
307
|
-
currentRound = [];
|
|
308
|
-
inRound = false;
|
|
309
|
-
}
|
|
310
|
-
// User message ends round
|
|
311
|
-
else if (inRound && message.role === 'user') {
|
|
312
|
-
if (currentRound.length > 0) {
|
|
313
|
-
rounds.push(currentRound);
|
|
314
|
-
}
|
|
315
|
-
currentRound = [];
|
|
316
|
-
inRound = false;
|
|
317
|
-
}
|
|
318
|
-
}
|
|
319
|
-
// Add incomplete round
|
|
320
|
-
if (currentRound.length > 0) {
|
|
321
|
-
rounds.push(currentRound);
|
|
322
|
-
}
|
|
323
|
-
return rounds;
|
|
324
|
-
}
|
|
325
|
-
/**
|
|
326
|
-
* Apply sliding window: keep first few + last many messages
|
|
327
|
-
*/
|
|
328
|
-
applySlidingWindow(messages, tokenCounter) {
|
|
329
|
-
// Bounds check: ensure array has at least a system message
|
|
330
|
-
if (messages.length === 0) {
|
|
331
|
-
return messages;
|
|
332
|
-
}
|
|
333
|
-
const systemMessage = messages[0];
|
|
334
|
-
const workingMessages = messages.slice(1);
|
|
335
|
-
// Start with system message + first 2 user messages
|
|
336
|
-
const firstMessages = [systemMessage];
|
|
337
|
-
let userCount = 0;
|
|
338
|
-
let firstMessageEnd = 0;
|
|
339
|
-
for (let i = 0; i < workingMessages.length; i++) {
|
|
340
|
-
if (workingMessages[i].role === 'user') {
|
|
341
|
-
firstMessages.push(workingMessages[i]);
|
|
342
|
-
userCount++;
|
|
343
|
-
firstMessageEnd = i;
|
|
344
|
-
if (userCount >= this.keepFirstMessages)
|
|
345
|
-
break;
|
|
346
|
-
}
|
|
347
|
-
}
|
|
348
|
-
// Calculate how many recent messages we can keep
|
|
349
|
-
const firstTokens = tokenCounter.countMessageTokens(firstMessages);
|
|
350
|
-
const availableTokens = Math.max(0, (this.contextWindow * this.pruneThreshold) - firstTokens - this.reservedTokens);
|
|
351
|
-
// If no space left, return minimal context (system + first messages only)
|
|
352
|
-
if (availableTokens <= 0) {
|
|
353
|
-
return firstMessages; // firstMessages already includes systemMessage
|
|
354
|
-
}
|
|
355
|
-
// Add recent messages from the end
|
|
356
|
-
const recentMessages = [];
|
|
357
|
-
let recentTokens = 0;
|
|
358
|
-
for (let i = workingMessages.length - 1; i > firstMessageEnd; i--) {
|
|
359
|
-
const msg = workingMessages[i];
|
|
360
|
-
const msgTokens = tokenCounter.countMessageTokens([msg]);
|
|
361
|
-
if (recentTokens + msgTokens <= availableTokens) {
|
|
362
|
-
recentMessages.unshift(msg);
|
|
363
|
-
recentTokens += msgTokens;
|
|
364
|
-
}
|
|
365
|
-
else {
|
|
366
|
-
break;
|
|
367
|
-
}
|
|
368
|
-
}
|
|
369
|
-
// Combine: system + first messages + marker + recent messages
|
|
370
|
-
const result = [...firstMessages];
|
|
371
|
-
// Add context marker if we skipped messages
|
|
372
|
-
// Check if there's a gap between first messages and recent messages
|
|
373
|
-
const gapStart = firstMessageEnd + 1;
|
|
374
|
-
const gapEnd = workingMessages.length - recentMessages.length;
|
|
375
|
-
if (recentMessages.length > 0 && gapStart < gapEnd) {
|
|
376
|
-
result.push({
|
|
377
|
-
role: 'system',
|
|
378
|
-
content: '[Previous conversation context pruned to manage token limits]',
|
|
379
|
-
});
|
|
380
|
-
}
|
|
381
|
-
result.push(...recentMessages);
|
|
382
|
-
return result;
|
|
383
|
-
}
|
|
384
|
-
/**
|
|
385
|
-
* Create a warning message for approaching limit
|
|
386
|
-
* Percentage shows remaining capacity (counts down from 100%)
|
|
387
|
-
*/
|
|
388
|
-
createWarningMessage(stats) {
|
|
389
|
-
if (stats.isNearLimit) {
|
|
390
|
-
return `⚠️ Context: ${stats.currentTokens.toLocaleString()}/${stats.contextWindow.toLocaleString()} tokens (${stats.percentage.toFixed(1)}% remaining)
|
|
391
|
-
💡 Near context limit! Consider starting a new conversation soon.`;
|
|
392
|
-
}
|
|
393
|
-
if (stats.shouldPrune) {
|
|
394
|
-
return `ℹ️ Context: ${stats.currentTokens.toLocaleString()}/${stats.contextWindow.toLocaleString()} tokens (${stats.percentage.toFixed(1)}% remaining)
|
|
395
|
-
📊 Context pruning active to maintain performance.`;
|
|
396
|
-
}
|
|
397
|
-
return `📊 Context: ${stats.currentTokens.toLocaleString()}/${stats.contextWindow.toLocaleString()} tokens (${stats.percentage.toFixed(1)}% remaining)`;
|
|
398
|
-
}
|
|
399
|
-
/**
|
|
400
|
-
* Clean up resources and remove all event listeners.
|
|
401
|
-
*/
|
|
402
|
-
destroy() {
|
|
403
|
-
this.removeAllListeners();
|
|
404
|
-
}
|
|
405
|
-
}
|
|
406
|
-
//# sourceMappingURL=context-manager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"context-manager.js","sourceRoot":"","sources":["../../src/agent/context-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Agent Core Module
|
|
3
|
-
*
|
|
4
|
-
* Core type definitions and utilities for the LLM Agent system.
|
|
5
|
-
*
|
|
6
|
-
* @packageDocumentation
|
|
7
|
-
*/
|
|
8
|
-
export type { ChatEntry, StreamingChunk, AccumulatedMessage, AgentConfig, AgentEventType, StreamResult, ToolParseResult, } from './types.js';
|
package/dist/agent/core/index.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agent/core/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Agent Core Types
|
|
3
|
-
*
|
|
4
|
-
* Type definitions for the LLM Agent system.
|
|
5
|
-
* These types extend @defai.digital/ax-schemas with concrete implementations
|
|
6
|
-
* for OpenAI SDK compatibility.
|
|
7
|
-
*
|
|
8
|
-
* @packageDocumentation
|
|
9
|
-
*/
|
|
10
|
-
import type { LLMToolCall } from "../../llm/client.js";
|
|
11
|
-
import type { ToolResult } from "../../types/index.js";
|
|
12
|
-
import type { ChatEntry as SchemaChatEntry, StreamingChunk as SchemaStreamingChunk, AccumulatedMessage as SchemaAccumulatedMessage } from "@defai.digital/ax-schemas";
|
|
13
|
-
/**
|
|
14
|
-
* Chat Entry - extends schema type with LLMToolCall for OpenAI SDK compatibility
|
|
15
|
-
*
|
|
16
|
-
* @remarks
|
|
17
|
-
* The canonical type definition is in @defai.digital/ax-schemas.
|
|
18
|
-
* This interface extends it to use the concrete LLMToolCall type from the LLM client.
|
|
19
|
-
*
|
|
20
|
-
* @see {@link SchemaChatEntry} for the canonical type definition
|
|
21
|
-
*/
|
|
22
|
-
export interface ChatEntry extends Omit<SchemaChatEntry, 'toolCalls' | 'toolCall'> {
|
|
23
|
-
/** Tool calls made by assistant (uses LLMToolCall for OpenAI SDK compatibility) */
|
|
24
|
-
toolCalls?: LLMToolCall[];
|
|
25
|
-
/** Single tool call (uses LLMToolCall for OpenAI SDK compatibility) */
|
|
26
|
-
toolCall?: LLMToolCall;
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Streaming Chunk - extends schema type with LLMToolCall for OpenAI SDK compatibility
|
|
30
|
-
*
|
|
31
|
-
* @remarks
|
|
32
|
-
* The canonical type definition is in @defai.digital/ax-schemas.
|
|
33
|
-
* This interface extends it to use concrete types from the LLM client and tools.
|
|
34
|
-
*
|
|
35
|
-
* @see {@link SchemaStreamingChunk} for the canonical type definition
|
|
36
|
-
*/
|
|
37
|
-
export interface StreamingChunk extends Omit<SchemaStreamingChunk, 'toolCalls' | 'toolCall' | 'toolResult'> {
|
|
38
|
-
/** Tool calls from LLM (uses LLMToolCall for OpenAI SDK compatibility) */
|
|
39
|
-
toolCalls?: LLMToolCall[];
|
|
40
|
-
/** Single tool call (uses LLMToolCall for OpenAI SDK compatibility) */
|
|
41
|
-
toolCall?: LLMToolCall;
|
|
42
|
-
/** Tool execution result (uses ToolResult from types) */
|
|
43
|
-
toolResult?: ToolResult;
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* Accumulated message from streaming response - extends schema type
|
|
47
|
-
*
|
|
48
|
-
* @remarks
|
|
49
|
-
* The canonical type definition is in @defai.digital/ax-schemas.
|
|
50
|
-
* This interface extends it to use the concrete LLMToolCall type.
|
|
51
|
-
*
|
|
52
|
-
* @see {@link SchemaAccumulatedMessage} for the canonical type definition
|
|
53
|
-
*/
|
|
54
|
-
export interface AccumulatedMessage extends Omit<SchemaAccumulatedMessage, 'tool_calls'> {
|
|
55
|
-
/** Tool calls accumulated from the response */
|
|
56
|
-
tool_calls?: LLMToolCall[];
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* Agent configuration options
|
|
60
|
-
*/
|
|
61
|
-
export interface AgentConfig {
|
|
62
|
-
/** API key for LLM provider */
|
|
63
|
-
apiKey: string;
|
|
64
|
-
/** Base URL for API (optional) */
|
|
65
|
-
baseURL?: string;
|
|
66
|
-
/** Model to use */
|
|
67
|
-
model?: string;
|
|
68
|
-
/** Maximum tool execution rounds */
|
|
69
|
-
maxToolRounds?: number;
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Agent events that can be emitted
|
|
73
|
-
*/
|
|
74
|
-
export type AgentEventType = 'system' | 'error' | 'context:summary' | 'tool:approval_required' | 'tool:approved' | 'tool:rejected' | 'phase:started' | 'phase:completed' | 'phase:failed' | 'plan:created' | 'plan:completed' | 'plan:failed' | 'plan:report';
|
|
75
|
-
/**
|
|
76
|
-
* Streaming result from processing chunks
|
|
77
|
-
*/
|
|
78
|
-
export interface StreamResult {
|
|
79
|
-
accumulated: AccumulatedMessage;
|
|
80
|
-
content: string;
|
|
81
|
-
yielded: boolean;
|
|
82
|
-
}
|
|
83
|
-
/**
|
|
84
|
-
* Tool parse result
|
|
85
|
-
*/
|
|
86
|
-
export type ToolParseResult = {
|
|
87
|
-
success: true;
|
|
88
|
-
args: Record<string, unknown>;
|
|
89
|
-
} | {
|
|
90
|
-
success: false;
|
|
91
|
-
error: string;
|
|
92
|
-
};
|
package/dist/agent/core/types.js
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Agent Core Types
|
|
3
|
-
*
|
|
4
|
-
* Type definitions for the LLM Agent system.
|
|
5
|
-
* These types extend @defai.digital/ax-schemas with concrete implementations
|
|
6
|
-
* for OpenAI SDK compatibility.
|
|
7
|
-
*
|
|
8
|
-
* @packageDocumentation
|
|
9
|
-
*/
|
|
10
|
-
export {};
|
|
11
|
-
//# sourceMappingURL=types.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/agent/core/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG"}
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Dependency Resolver
|
|
3
|
-
*
|
|
4
|
-
* Resolves task dependencies and determines execution order for subagents.
|
|
5
|
-
* Implements topological sorting with cycle detection.
|
|
6
|
-
*/
|
|
7
|
-
import type { SubagentTask, DependencyGraph } from './subagent-types.js';
|
|
8
|
-
/**
|
|
9
|
-
* DependencyResolver class for managing task dependencies
|
|
10
|
-
*/
|
|
11
|
-
export declare class DependencyResolver {
|
|
12
|
-
/**
|
|
13
|
-
* Resolve task dependencies and return execution batches
|
|
14
|
-
* Tasks in the same batch can be executed in parallel
|
|
15
|
-
*
|
|
16
|
-
* @param tasks Array of tasks to resolve
|
|
17
|
-
* @returns Array of batches, where each batch is an array of task IDs
|
|
18
|
-
*/
|
|
19
|
-
resolveDependencies(tasks: SubagentTask[]): string[][];
|
|
20
|
-
/**
|
|
21
|
-
* Validate that there are no circular dependencies
|
|
22
|
-
*
|
|
23
|
-
* @param tasks Array of tasks to validate
|
|
24
|
-
* @returns true if valid, false if circular dependencies exist
|
|
25
|
-
*/
|
|
26
|
-
validateDependencies(tasks: SubagentTask[]): boolean;
|
|
27
|
-
/**
|
|
28
|
-
* Get dependency graph structure
|
|
29
|
-
*
|
|
30
|
-
* @param tasks Array of tasks
|
|
31
|
-
* @returns DependencyGraph object with nodes and execution order
|
|
32
|
-
*/
|
|
33
|
-
getDependencyGraph(tasks: SubagentTask[]): DependencyGraph;
|
|
34
|
-
/**
|
|
35
|
-
* Build dependency graph from tasks
|
|
36
|
-
*/
|
|
37
|
-
private buildDependencyGraph;
|
|
38
|
-
/**
|
|
39
|
-
* Perform topological sort using Kahn's algorithm
|
|
40
|
-
*/
|
|
41
|
-
private topologicalSort;
|
|
42
|
-
/**
|
|
43
|
-
* Group sorted tasks into parallel execution batches
|
|
44
|
-
*/
|
|
45
|
-
private groupIntoBatches;
|
|
46
|
-
/**
|
|
47
|
-
* Check if graph has cycles using DFS
|
|
48
|
-
*/
|
|
49
|
-
private hasCycle;
|
|
50
|
-
/**
|
|
51
|
-
* Utility function for cycle detection
|
|
52
|
-
*/
|
|
53
|
-
private hasCycleUtil;
|
|
54
|
-
/**
|
|
55
|
-
* Find all cycles in the graph
|
|
56
|
-
* BUG FIX: Removed unused _tasks parameter
|
|
57
|
-
*/
|
|
58
|
-
private findCycles;
|
|
59
|
-
/**
|
|
60
|
-
* Utility function for finding cycles
|
|
61
|
-
* BUG FIX: Use separate Set for recursion stack tracking to avoid
|
|
62
|
-
* false positives when a node is visited from different paths
|
|
63
|
-
*/
|
|
64
|
-
private findCyclesUtil;
|
|
65
|
-
/**
|
|
66
|
-
* Get execution level for a task
|
|
67
|
-
* Level 0 = no dependencies, Level N = depends on tasks at level N-1
|
|
68
|
-
*/
|
|
69
|
-
getTaskLevel(taskId: string, tasks: SubagentTask[]): number;
|
|
70
|
-
/**
|
|
71
|
-
* Get all tasks that can be executed in parallel
|
|
72
|
-
*/
|
|
73
|
-
getParallelTasks(tasks: SubagentTask[]): string[][];
|
|
74
|
-
/**
|
|
75
|
-
* Check if a task can be executed given completed tasks
|
|
76
|
-
* BUG FIX: Added overload with taskMap for O(1) lookup in hot paths
|
|
77
|
-
*/
|
|
78
|
-
canExecuteTask(taskId: string, completedTaskIds: Set<string>, tasks: SubagentTask[]): boolean;
|
|
79
|
-
canExecuteTask(taskId: string, completedTaskIds: Set<string>, taskMap: Map<string, SubagentTask>): boolean;
|
|
80
|
-
/**
|
|
81
|
-
* Get tasks that are ready to execute
|
|
82
|
-
* BUG FIX: Avoid calling canExecuteTask which does O(n) lookup per task
|
|
83
|
-
* Instead, inline the logic to avoid O(n²) complexity
|
|
84
|
-
*/
|
|
85
|
-
getReadyTasks(tasks: SubagentTask[], completedTaskIds: Set<string>): SubagentTask[];
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* Create a new dependency resolver instance
|
|
89
|
-
*/
|
|
90
|
-
export declare function createDependencyResolver(): DependencyResolver;
|