@lotagate/cli 0.1.24 → 0.1.26
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 +75 -7
- package/SECURITY.md +2 -0
- package/bin/lotagate.mjs +50 -8
- package/dist/application/agent/agent-constants.d.ts +6 -0
- package/dist/application/agent/agent-constants.js +1 -0
- package/dist/application/agent/agent-history.d.ts +3 -0
- package/dist/application/agent/agent-history.js +5 -0
- package/dist/application/agent/agent-input-context.d.ts +12 -0
- package/dist/application/agent/agent-input-context.js +5 -0
- package/dist/application/agent/agent-limit.d.ts +3 -0
- package/dist/application/agent/agent-limit.js +1 -0
- package/dist/application/agent/agent-run-tracker.d.ts +30 -0
- package/dist/application/agent/agent-run-tracker.js +1 -0
- package/dist/application/agent/agent-runtime-context.d.ts +22 -0
- package/dist/application/agent/agent-runtime-context.js +1 -0
- package/dist/application/agent/agent-session-store-registry.d.ts +16 -0
- package/dist/application/agent/agent-session-store-registry.js +1 -0
- package/dist/application/agent/agent-session-store.d.ts +23 -0
- package/dist/application/agent/agent-session-store.js +6 -0
- package/dist/application/agent/capability-profile.d.ts +17 -0
- package/dist/application/agent/capability-profile.js +0 -0
- package/dist/application/agent/cli-agent-execution-service.d.ts +120 -0
- package/dist/application/agent/cli-agent-execution-service.js +1 -0
- package/dist/application/agent/cli-agent-preparation-cache.d.ts +39 -0
- package/dist/application/agent/cli-agent-preparation-cache.js +1 -0
- package/dist/application/agent/cli-agent-run-request.d.ts +12 -0
- package/dist/application/agent/cli-agent-run-request.js +0 -0
- package/dist/application/agent/context-compaction-persistence.d.ts +8 -0
- package/dist/application/agent/context-compaction-persistence.js +1 -0
- package/dist/application/agent/context-compaction.d.ts +22 -0
- package/dist/application/agent/context-compaction.js +8 -0
- package/dist/application/agent/context-token-cache.d.ts +21 -0
- package/dist/application/agent/context-token-cache.js +4 -0
- package/dist/application/agent/context-usage-service.d.ts +52 -0
- package/dist/application/agent/context-usage-service.js +1 -0
- package/dist/application/agent/continuation-checkpoint.d.ts +15 -0
- package/dist/application/agent/continuation-checkpoint.js +2 -0
- package/dist/application/agent/interactive-agent-guidance.d.ts +5 -0
- package/dist/application/agent/interactive-agent-guidance.js +2 -0
- package/dist/application/agent/prompt-data-safety.d.ts +14 -0
- package/dist/application/agent/prompt-data-safety.js +4 -0
- package/dist/application/agent/scoped-tool-executor.d.ts +13 -0
- package/dist/application/agent/scoped-tool-executor.js +1 -0
- package/dist/application/agent/tool-catalog.d.ts +14 -0
- package/dist/application/agent/tool-catalog.js +1 -0
- package/dist/application/agent/tool-display.d.ts +7 -0
- package/dist/application/agent/tool-display.js +1 -0
- package/dist/application/agent/tool-hook-lifecycle.d.ts +19 -0
- package/dist/application/agent/tool-hook-lifecycle.js +1 -0
- package/dist/application/auth/authentication-service.d.ts +20 -0
- package/dist/application/auth/authentication-service.js +1 -0
- package/dist/application/chat/chat-service.d.ts +12 -0
- package/dist/application/chat/chat-service.js +1 -0
- package/dist/application/chat/pending-attachment-store.d.ts +15 -0
- package/dist/application/chat/pending-attachment-store.js +1 -0
- package/dist/application/commands/application-command-executor.d.ts +23 -0
- package/dist/application/commands/application-command-executor.js +3 -0
- package/dist/application/commands/cli-args.d.ts +6 -0
- package/dist/application/commands/cli-args.js +1 -0
- package/dist/application/commands/cli-command-services.d.ts +17 -0
- package/dist/application/commands/cli-command-services.js +33 -0
- package/dist/application/commands/command-cancellation.d.ts +6 -0
- package/dist/application/commands/command-cancellation.js +1 -0
- package/dist/application/commands/command-catalog.d.ts +6 -0
- package/dist/application/commands/command-catalog.js +1 -0
- package/dist/application/commands/command-contract.d.ts +60 -0
- package/dist/application/commands/command-contract.js +0 -0
- package/dist/application/commands/command-hints.d.ts +9 -0
- package/dist/application/commands/command-hints.js +1 -0
- package/dist/application/commands/command-output.d.ts +4 -0
- package/dist/application/commands/command-output.js +0 -0
- package/dist/application/commands/command-parser.d.ts +10 -0
- package/dist/application/commands/command-parser.js +1 -0
- package/dist/application/commands/command-presentation.d.ts +7 -0
- package/dist/application/commands/command-presentation.js +3 -0
- package/dist/application/commands/command-registry.d.ts +11 -0
- package/dist/application/commands/command-registry.js +1 -0
- package/dist/application/commands/command-runtime.d.ts +2 -0
- package/dist/application/commands/command-runtime.js +1 -0
- package/dist/application/commands/goal-command-handlers.d.ts +3 -0
- package/dist/application/commands/goal-command-handlers.js +7 -0
- package/dist/application/commands/media-command-handlers.d.ts +9 -0
- package/dist/application/commands/media-command-handlers.js +9 -0
- package/dist/application/commands/media-command-output.d.ts +11 -0
- package/dist/application/commands/media-command-output.js +1 -0
- package/dist/application/commands/memory-command-handler.d.ts +29 -0
- package/dist/application/commands/memory-command-handler.js +12 -0
- package/dist/application/commands/runtime-command-handlers.d.ts +7 -0
- package/dist/application/commands/runtime-command-handlers.js +14 -0
- package/dist/application/commands/stream-output.d.ts +4 -0
- package/dist/application/commands/stream-output.js +1 -0
- package/dist/application/commands/utility-commands.d.ts +6 -0
- package/dist/application/commands/utility-commands.js +10 -0
- package/dist/application/config/execution-config.d.ts +4 -0
- package/dist/application/config/execution-config.js +1 -0
- package/dist/application/extensions/extension-list-contract.d.ts +18 -0
- package/dist/application/extensions/extension-list-contract.js +0 -0
- package/dist/application/extensions/extension-list-formatters.d.ts +38 -0
- package/dist/application/extensions/extension-list-formatters.js +1 -0
- package/dist/application/extensions/extension-list-output.d.ts +3 -0
- package/dist/application/extensions/extension-list-output.js +3 -0
- package/dist/application/extensions/plugin-contribution-registry.d.ts +31 -0
- package/dist/application/extensions/plugin-contribution-registry.js +1 -0
- package/dist/application/extensions/plugin-detail-contract.d.ts +25 -0
- package/dist/application/extensions/plugin-detail-contract.js +0 -0
- package/dist/application/extensions/plugin-detail-service.d.ts +3 -0
- package/dist/application/extensions/plugin-detail-service.js +1 -0
- package/dist/application/extensions/skill-scope-store.d.ts +23 -0
- package/dist/application/extensions/skill-scope-store.js +1 -0
- package/dist/application/formatting/compact-number.d.ts +2 -0
- package/dist/application/formatting/compact-number.js +1 -0
- package/dist/application/formatting/compact-table.d.ts +22 -0
- package/dist/application/formatting/compact-table.js +2 -0
- package/dist/application/intent/completion-gate.d.ts +3 -0
- package/dist/application/intent/completion-gate.js +1 -0
- package/dist/application/intent/evidence-ledger.d.ts +22 -0
- package/dist/application/intent/evidence-ledger.js +1 -0
- package/dist/application/intent/evidence-recording-tool-executor.d.ts +16 -0
- package/dist/application/intent/evidence-recording-tool-executor.js +1 -0
- package/dist/application/intent/intent-compiler.d.ts +11 -0
- package/dist/application/intent/intent-compiler.js +2 -0
- package/dist/application/intent/intent-execution-gate.d.ts +11 -0
- package/dist/application/intent/intent-execution-gate.js +1 -0
- package/dist/application/intent/intent-host-context.d.ts +6 -0
- package/dist/application/intent/intent-host-context.js +1 -0
- package/dist/application/intent/intent-run-controller.d.ts +56 -0
- package/dist/application/intent/intent-run-controller.js +3 -0
- package/dist/application/intent/project-policy.d.ts +16 -0
- package/dist/application/intent/project-policy.js +1 -0
- package/dist/application/media/video-operation-poller.d.ts +5 -0
- package/dist/application/media/video-operation-poller.js +1 -0
- package/dist/application/memory/memory-capture-policy.d.ts +10 -0
- package/dist/application/memory/memory-capture-policy.js +1 -0
- package/dist/application/memory/memory-consolidation-service.d.ts +12 -0
- package/dist/application/memory/memory-consolidation-service.js +1 -0
- package/dist/application/memory/memory-context-assembler.d.ts +24 -0
- package/dist/application/memory/memory-context-assembler.js +1 -0
- package/dist/application/memory/memory-extractor.d.ts +21 -0
- package/dist/application/memory/memory-extractor.js +2 -0
- package/dist/application/memory/memory-service.d.ts +34 -0
- package/dist/application/memory/memory-service.js +1 -0
- package/dist/application/model/cached-model-catalog.d.ts +19 -0
- package/dist/application/model/cached-model-catalog.js +1 -0
- package/dist/application/model/initial-model-selection.d.ts +10 -0
- package/dist/application/model/initial-model-selection.js +1 -0
- package/dist/application/model/model-catalog-service.d.ts +6 -0
- package/dist/application/model/model-catalog-service.js +1 -0
- package/dist/application/model/model-context-window.d.ts +3 -0
- package/dist/application/model/model-context-window.js +1 -0
- package/dist/application/model/model-response-retry.d.ts +15 -0
- package/dist/application/model/model-response-retry.js +1 -0
- package/dist/application/orchestration/abortable-wait.d.ts +2 -0
- package/dist/application/orchestration/abortable-wait.js +1 -0
- package/dist/application/orchestration/cli-subagent-service.d.ts +77 -0
- package/dist/application/orchestration/cli-subagent-service.js +13 -0
- package/dist/application/orchestration/cli-turn-event-projector.d.ts +15 -0
- package/dist/application/orchestration/cli-turn-event-projector.js +1 -0
- package/dist/application/orchestration/cli-turn-events.d.ts +76 -0
- package/dist/application/orchestration/cli-turn-events.js +1 -0
- package/dist/application/orchestration/cli-turn-persistence.d.ts +6 -0
- package/dist/application/orchestration/cli-turn-persistence.js +1 -0
- package/dist/application/orchestration/goal-evaluator.d.ts +18 -0
- package/dist/application/orchestration/goal-evaluator.js +3 -0
- package/dist/application/orchestration/goal-input.d.ts +3 -0
- package/dist/application/orchestration/goal-input.js +1 -0
- package/dist/application/orchestration/goal-output.d.ts +2 -0
- package/dist/application/orchestration/goal-output.js +2 -0
- package/dist/application/orchestration/goal-runner.d.ts +22 -0
- package/dist/application/orchestration/goal-runner.js +10 -0
- package/dist/application/orchestration/goal-usage.d.ts +9 -0
- package/dist/application/orchestration/goal-usage.js +1 -0
- package/dist/application/orchestration/headless-agent-turn.d.ts +36 -0
- package/dist/application/orchestration/headless-agent-turn.js +4 -0
- package/dist/application/orchestration/orchestration-constants.d.ts +3 -0
- package/dist/application/orchestration/orchestration-constants.js +1 -0
- package/dist/application/orchestration/subagent-coordinator.d.ts +41 -0
- package/dist/application/orchestration/subagent-coordinator.js +1 -0
- package/dist/application/orchestration/subagent-handoff.d.ts +3 -0
- package/dist/application/orchestration/subagent-handoff.js +3 -0
- package/dist/application/orchestration/subagent-tool-executor.d.ts +12 -0
- package/dist/application/orchestration/subagent-tool-executor.js +1 -0
- package/dist/application/orchestration/task-graph.d.ts +13 -0
- package/dist/application/orchestration/task-graph.js +1 -0
- package/dist/application/orchestration/task-scheduler.d.ts +18 -0
- package/dist/application/orchestration/task-scheduler.js +1 -0
- package/dist/application/project/project-trust-service.d.ts +13 -0
- package/dist/application/project/project-trust-service.js +1 -0
- package/dist/application/project-intelligence/project-intelligence-constants.d.ts +56 -0
- package/dist/application/project-intelligence/project-intelligence-constants.js +1 -0
- package/dist/application/project-intelligence/project-intelligence-service.d.ts +14 -0
- package/dist/application/project-intelligence/project-intelligence-service.js +1 -0
- package/dist/application/protocol/browser-host-tool-executor.d.ts +51 -0
- package/dist/application/protocol/browser-host-tool-executor.js +2 -0
- package/dist/application/protocol/computer-host-tool-executor.d.ts +45 -0
- package/dist/application/protocol/computer-host-tool-executor.js +2 -0
- package/dist/application/protocol/desktop-agent-command.d.ts +9 -0
- package/dist/application/protocol/desktop-agent-command.js +3 -0
- package/dist/application/protocol/desktop-agent-contracts.d.ts +34 -0
- package/dist/application/protocol/desktop-agent-contracts.js +1 -0
- package/dist/application/protocol/desktop-agent-helpers.d.ts +5 -0
- package/dist/application/protocol/desktop-agent-helpers.js +1 -0
- package/dist/application/protocol/desktop-agent-request-parser.d.ts +211 -0
- package/dist/application/protocol/desktop-agent-request-parser.js +1 -0
- package/dist/application/protocol/desktop-approval-broker.d.ts +26 -0
- package/dist/application/protocol/desktop-approval-broker.js +1 -0
- package/dist/application/protocol/desktop-attachment-store.d.ts +33 -0
- package/dist/application/protocol/desktop-attachment-store.js +1 -0
- package/dist/application/protocol/desktop-command-catalog.d.ts +2 -0
- package/dist/application/protocol/desktop-command-catalog.js +1 -0
- package/dist/application/protocol/desktop-command-contract.d.ts +26 -0
- package/dist/application/protocol/desktop-command-contract.js +1 -0
- package/dist/application/protocol/desktop-command-executor.d.ts +17 -0
- package/dist/application/protocol/desktop-command-executor.js +1 -0
- package/dist/application/protocol/desktop-command-output.d.ts +15 -0
- package/dist/application/protocol/desktop-command-output.js +1 -0
- package/dist/application/protocol/desktop-execution-policy.d.ts +19 -0
- package/dist/application/protocol/desktop-execution-policy.js +1 -0
- package/dist/application/protocol/desktop-extension-request-handler.d.ts +14 -0
- package/dist/application/protocol/desktop-extension-request-handler.js +1 -0
- package/dist/application/protocol/desktop-extension-service.d.ts +44 -0
- package/dist/application/protocol/desktop-extension-service.js +3 -0
- package/dist/application/protocol/desktop-host-bridge.d.ts +33 -0
- package/dist/application/protocol/desktop-host-bridge.js +1 -0
- package/dist/application/protocol/desktop-host-capabilities.d.ts +12 -0
- package/dist/application/protocol/desktop-host-capabilities.js +1 -0
- package/dist/application/protocol/desktop-host-tool-executor.d.ts +76 -0
- package/dist/application/protocol/desktop-host-tool-executor.js +2 -0
- package/dist/application/protocol/desktop-intent-event-writer.d.ts +20 -0
- package/dist/application/protocol/desktop-intent-event-writer.js +1 -0
- package/dist/application/protocol/desktop-mcp-events.d.ts +10 -0
- package/dist/application/protocol/desktop-mcp-events.js +1 -0
- package/dist/application/protocol/desktop-orchestration-events.d.ts +2 -0
- package/dist/application/protocol/desktop-orchestration-events.js +2 -0
- package/dist/application/protocol/desktop-protocol-helpers.d.ts +13 -0
- package/dist/application/protocol/desktop-protocol-helpers.js +1 -0
- package/dist/application/protocol/json-line-writer.d.ts +31 -0
- package/dist/application/protocol/json-line-writer.js +2 -0
- package/dist/application/protocol/jsonl-agent-command.d.ts +3 -0
- package/dist/application/protocol/jsonl-agent-command.js +3 -0
- package/dist/application/protocol/jsonl-protocol.d.ts +82 -0
- package/dist/application/protocol/jsonl-protocol.js +2 -0
- package/dist/application/protocol/tool-image-content.d.ts +4 -0
- package/dist/application/protocol/tool-image-content.js +1 -0
- package/dist/application/security/delegated-worker-policy.d.ts +3 -0
- package/dist/application/security/delegated-worker-policy.js +1 -0
- package/dist/application/security/desktop-tool-scope-policy.d.ts +4 -0
- package/dist/application/security/desktop-tool-scope-policy.js +1 -0
- package/dist/application/security/tool-action-risk-analyzer.d.ts +13 -0
- package/dist/application/security/tool-action-risk-analyzer.js +1 -0
- package/dist/application/security/tool-approval-service.d.ts +43 -0
- package/dist/application/security/tool-approval-service.js +1 -0
- package/dist/application/security/tool-policy-registry.d.ts +20 -0
- package/dist/application/security/tool-policy-registry.js +1 -0
- package/dist/application/security/tool-risk-classifier.d.ts +19 -0
- package/dist/application/security/tool-risk-classifier.js +1 -0
- package/dist/application/security/workspace-permission-policy.d.ts +10 -0
- package/dist/application/security/workspace-permission-policy.js +1 -0
- package/dist/application/session/project-session-access.d.ts +8 -0
- package/dist/application/session/project-session-access.js +1 -0
- package/dist/application/session/session-compaction-service.d.ts +10 -0
- package/dist/application/session/session-compaction-service.js +1 -0
- package/dist/application/session/session-turn-lifecycle.d.ts +5 -0
- package/dist/application/session/session-turn-lifecycle.js +1 -0
- package/dist/application/workspace/session-execution-workspace.d.ts +59 -0
- package/dist/application/workspace/session-execution-workspace.js +3 -0
- package/dist/application/workspace/workspace-constants.d.ts +17 -0
- package/dist/application/workspace/workspace-constants.js +1 -0
- package/dist/application/workspace/workspace-file-index.d.ts +14 -0
- package/dist/application/workspace/workspace-file-index.js +1 -0
- package/dist/application/workspace/workspace-file-reference-resolver.d.ts +20 -0
- package/dist/application/workspace/workspace-file-reference-resolver.js +17 -0
- package/dist/application/workspace/workspace-instruction-loader.d.ts +8 -0
- package/dist/application/workspace/workspace-instruction-loader.js +1 -0
- package/dist/bootstrap/composition-root.d.ts +7 -0
- package/dist/bootstrap/composition-root.js +1 -0
- package/dist/bootstrap/global-cli-options.d.ts +6 -0
- package/dist/bootstrap/global-cli-options.js +1 -0
- package/dist/bootstrap/native-devtools-stub.d.ts +10 -0
- package/dist/bootstrap/native-devtools-stub.js +1 -0
- package/dist/bootstrap/native-entry.d.ts +1 -0
- package/dist/bootstrap/native-entry.js +2 -0
- package/dist/bootstrap/native-tiktoken.d.ts +4 -0
- package/dist/bootstrap/native-tiktoken.js +1 -0
- package/dist/bootstrap/runtime-factory.d.ts +46 -0
- package/dist/bootstrap/runtime-factory.js +1 -0
- package/dist/bootstrap/shutdown-manager.d.ts +11 -0
- package/dist/bootstrap/shutdown-manager.js +1 -0
- package/dist/bootstrap/startup-sequence.d.ts +5 -0
- package/dist/bootstrap/startup-sequence.js +1 -0
- package/dist/domain/auth/auth-profile.d.ts +14 -0
- package/dist/domain/auth/auth-profile.js +1 -0
- package/dist/domain/config/config-schema.d.ts +24 -0
- package/dist/domain/config/config-schema.js +1 -0
- package/dist/domain/errors/cli-command-hint.d.ts +5 -0
- package/dist/domain/errors/cli-command-hint.js +0 -0
- package/dist/domain/errors/cli-error.d.ts +35 -0
- package/dist/domain/errors/cli-error.js +1 -0
- package/dist/domain/errors/error-codes.d.ts +51 -0
- package/dist/domain/errors/error-codes.js +1 -0
- package/dist/domain/extensions/extension-constants.d.ts +1 -0
- package/dist/domain/extensions/extension-constants.js +1 -0
- package/dist/domain/extensions/extension-scope.d.ts +3 -0
- package/dist/domain/extensions/extension-scope.js +1 -0
- package/dist/domain/extensions/extension-state.d.ts +5 -0
- package/dist/domain/extensions/extension-state.js +1 -0
- package/dist/domain/extensions/hook-manifest.d.ts +13 -0
- package/dist/domain/extensions/hook-manifest.js +1 -0
- package/dist/domain/extensions/host-tool-plugin-ids.d.ts +5 -0
- package/dist/domain/extensions/host-tool-plugin-ids.js +1 -0
- package/dist/domain/extensions/mcp-config.d.ts +35 -0
- package/dist/domain/extensions/mcp-config.js +1 -0
- package/dist/domain/extensions/plugin-agent-manifest.d.ts +8 -0
- package/dist/domain/extensions/plugin-agent-manifest.js +1 -0
- package/dist/domain/extensions/plugin-manifest.d.ts +23 -0
- package/dist/domain/extensions/plugin-manifest.js +1 -0
- package/dist/domain/extensions/skill-manifest.d.ts +10 -0
- package/dist/domain/extensions/skill-manifest.js +3 -0
- package/dist/domain/extensions/yaml-subset.d.ts +9 -0
- package/dist/domain/extensions/yaml-subset.js +2 -0
- package/dist/domain/filesystem/file-change-diff.d.ts +21 -0
- package/dist/domain/filesystem/file-change-diff.js +3 -0
- package/dist/domain/intent/intent-contract.d.ts +33 -0
- package/dist/domain/intent/intent-contract.js +1 -0
- package/dist/domain/media/gateway-media-contract.d.ts +23 -0
- package/dist/domain/media/gateway-media-contract.js +1 -0
- package/dist/domain/media/media-constants.d.ts +3 -0
- package/dist/domain/media/media-constants.js +1 -0
- package/dist/domain/media/media-contract.d.ts +28 -0
- package/dist/domain/media/media-contract.js +0 -0
- package/dist/domain/media/media-execution-policy.d.ts +9 -0
- package/dist/domain/media/media-execution-policy.js +1 -0
- package/dist/domain/memory/memory-constants.d.ts +3 -0
- package/dist/domain/memory/memory-constants.js +1 -0
- package/dist/domain/memory/memory-kinds.d.ts +15 -0
- package/dist/domain/memory/memory-kinds.js +1 -0
- package/dist/domain/memory/memory-retrieval-policy.d.ts +3 -0
- package/dist/domain/memory/memory-retrieval-policy.js +1 -0
- package/dist/domain/memory/memory-search.d.ts +33 -0
- package/dist/domain/memory/memory-search.js +2 -0
- package/dist/domain/memory/memory.d.ts +48 -0
- package/dist/domain/memory/memory.js +1 -0
- package/dist/domain/orchestration/goal.d.ts +57 -0
- package/dist/domain/orchestration/goal.js +1 -0
- package/dist/domain/orchestration/subagent-identity.d.ts +2 -0
- package/dist/domain/orchestration/subagent-identity.js +1 -0
- package/dist/domain/orchestration/subagent.d.ts +33 -0
- package/dist/domain/orchestration/subagent.js +0 -0
- package/dist/domain/orchestration/work-plan.d.ts +15 -0
- package/dist/domain/orchestration/work-plan.js +0 -0
- package/dist/domain/project/project-identity.d.ts +6 -0
- package/dist/domain/project/project-identity.js +1 -0
- package/dist/domain/runtime/assistant-delta-normalizer.d.ts +11 -0
- package/dist/domain/runtime/assistant-delta-normalizer.js +1 -0
- package/dist/domain/runtime/assistant-stream-text.d.ts +11 -0
- package/dist/domain/runtime/assistant-stream-text.js +1 -0
- package/dist/domain/runtime/gateway-request-budget.d.ts +19 -0
- package/dist/domain/runtime/gateway-request-budget.js +1 -0
- package/dist/domain/runtime/resource-limits.d.ts +92 -0
- package/dist/domain/runtime/resource-limits.js +1 -0
- package/dist/domain/session/attachment.d.ts +15 -0
- package/dist/domain/session/attachment.js +0 -0
- package/dist/domain/session/session-schema.d.ts +6 -0
- package/dist/domain/session/session-schema.js +1 -0
- package/dist/domain/session/session.d.ts +27 -0
- package/dist/domain/session/session.js +0 -0
- package/dist/domain/settings/settings-document.d.ts +8 -0
- package/dist/domain/settings/settings-document.js +1 -0
- package/dist/domain/validation/record-schema.d.ts +4 -0
- package/dist/domain/validation/record-schema.js +1 -0
- package/dist/domain/workspace/workspace-settings.d.ts +14 -0
- package/dist/domain/workspace/workspace-settings.js +1 -0
- package/dist/infrastructure/agent-sdk/agent-instance-factory.d.ts +22 -0
- package/dist/infrastructure/agent-sdk/agent-instance-factory.js +1 -0
- package/dist/infrastructure/agent-sdk/model-response-metrics.d.ts +7 -0
- package/dist/infrastructure/agent-sdk/model-response-metrics.js +1 -0
- package/dist/infrastructure/agent-sdk/model-tool-name-mapper.d.ts +13 -0
- package/dist/infrastructure/agent-sdk/model-tool-name-mapper.js +1 -0
- package/dist/infrastructure/agent-sdk/sdk-constants.d.ts +2 -0
- package/dist/infrastructure/agent-sdk/sdk-constants.js +1 -0
- package/dist/infrastructure/agent-sdk/tool-calling-completion-client.d.ts +4 -0
- package/dist/infrastructure/agent-sdk/tool-calling-completion-client.js +1 -0
- package/dist/infrastructure/agent-sdk/tool-calling-model-client.d.ts +11 -0
- package/dist/infrastructure/agent-sdk/tool-calling-model-client.js +1 -0
- package/dist/infrastructure/cache/cache-policy.d.ts +9 -0
- package/dist/infrastructure/cache/cache-policy.js +1 -0
- package/dist/infrastructure/cache/file-cache-store.d.ts +25 -0
- package/dist/infrastructure/cache/file-cache-store.js +2 -0
- package/dist/infrastructure/clipboard/clipboard-adapter-factory.d.ts +11 -0
- package/dist/infrastructure/clipboard/clipboard-adapter-factory.js +1 -0
- package/dist/infrastructure/clipboard/clipboard-constants.d.ts +1 -0
- package/dist/infrastructure/clipboard/clipboard-constants.js +1 -0
- package/dist/infrastructure/clipboard/clipboard-policy.d.ts +8 -0
- package/dist/infrastructure/clipboard/clipboard-policy.js +1 -0
- package/dist/infrastructure/clipboard/clipboard-text-adapter-factory.d.ts +10 -0
- package/dist/infrastructure/clipboard/clipboard-text-adapter-factory.js +1 -0
- package/dist/infrastructure/clipboard/image-normalizer.d.ts +12 -0
- package/dist/infrastructure/clipboard/image-normalizer.js +1 -0
- package/dist/infrastructure/clipboard/windows-clipboard-adapter.d.ts +7 -0
- package/dist/infrastructure/clipboard/windows-clipboard-adapter.js +1 -0
- package/dist/infrastructure/clipboard/windows-clipboard-text-adapter.d.ts +7 -0
- package/dist/infrastructure/clipboard/windows-clipboard-text-adapter.js +1 -0
- package/dist/infrastructure/config/config-loader.d.ts +19 -0
- package/dist/infrastructure/config/config-loader.js +2 -0
- package/dist/infrastructure/config/environment-values.d.ts +2 -0
- package/dist/infrastructure/config/environment-values.js +1 -0
- package/dist/infrastructure/credentials/composite-credential-store.d.ts +11 -0
- package/dist/infrastructure/credentials/composite-credential-store.js +1 -0
- package/dist/infrastructure/credentials/encrypted-file-credential-store.d.ts +17 -0
- package/dist/infrastructure/credentials/encrypted-file-credential-store.js +3 -0
- package/dist/infrastructure/credentials/environment-credential-store.d.ts +11 -0
- package/dist/infrastructure/credentials/environment-credential-store.js +1 -0
- package/dist/infrastructure/credentials/secret-input.d.ts +7 -0
- package/dist/infrastructure/credentials/secret-input.js +3 -0
- package/dist/infrastructure/extensions/composite-mcp-config-store.d.ts +9 -0
- package/dist/infrastructure/extensions/composite-mcp-config-store.js +1 -0
- package/dist/infrastructure/extensions/extension-directory-reader.d.ts +2 -0
- package/dist/infrastructure/extensions/extension-directory-reader.js +1 -0
- package/dist/infrastructure/extensions/extension-integrity.d.ts +7 -0
- package/dist/infrastructure/extensions/extension-integrity.js +1 -0
- package/dist/infrastructure/extensions/extension-source-resolver.d.ts +6 -0
- package/dist/infrastructure/extensions/extension-source-resolver.js +1 -0
- package/dist/infrastructure/extensions/extensions-constants.d.ts +6 -0
- package/dist/infrastructure/extensions/extensions-constants.js +1 -0
- package/dist/infrastructure/extensions/file-mcp-config-store.d.ts +15 -0
- package/dist/infrastructure/extensions/file-mcp-config-store.js +2 -0
- package/dist/infrastructure/extensions/hook-runtime.d.ts +18 -0
- package/dist/infrastructure/extensions/hook-runtime.js +1 -0
- package/dist/infrastructure/extensions/mcp-runtime.d.ts +58 -0
- package/dist/infrastructure/extensions/mcp-runtime.js +1 -0
- package/dist/infrastructure/extensions/plugin-agent-discovery.d.ts +4 -0
- package/dist/infrastructure/extensions/plugin-agent-discovery.js +1 -0
- package/dist/infrastructure/extensions/plugin-discovery.d.ts +5 -0
- package/dist/infrastructure/extensions/plugin-discovery.js +1 -0
- package/dist/infrastructure/extensions/plugin-manager.d.ts +23 -0
- package/dist/infrastructure/extensions/plugin-manager.js +2 -0
- package/dist/infrastructure/extensions/skill-discovery.d.ts +4 -0
- package/dist/infrastructure/extensions/skill-discovery.js +1 -0
- package/dist/infrastructure/extensions/skill-installer.d.ts +9 -0
- package/dist/infrastructure/extensions/skill-installer.js +1 -0
- package/dist/infrastructure/extensions/skill-manager.d.ts +22 -0
- package/dist/infrastructure/extensions/skill-manager.js +2 -0
- package/dist/infrastructure/extensions/skill-roots.d.ts +19 -0
- package/dist/infrastructure/extensions/skill-roots.js +1 -0
- package/dist/infrastructure/extensions/skill-tool-executor.d.ts +20 -0
- package/dist/infrastructure/extensions/skill-tool-executor.js +2 -0
- package/dist/infrastructure/filesystem/atomic-file-store.d.ts +28 -0
- package/dist/infrastructure/filesystem/atomic-file-store.js +1 -0
- package/dist/infrastructure/filesystem/bounded-file-reader.d.ts +6 -0
- package/dist/infrastructure/filesystem/bounded-file-reader.js +1 -0
- package/dist/infrastructure/filesystem/bounded-json-reader.d.ts +1 -0
- package/dist/infrastructure/filesystem/bounded-json-reader.js +1 -0
- package/dist/infrastructure/filesystem/filesystem-constants.d.ts +8 -0
- package/dist/infrastructure/filesystem/filesystem-constants.js +1 -0
- package/dist/infrastructure/filesystem/fs-errors.d.ts +2 -0
- package/dist/infrastructure/filesystem/fs-errors.js +1 -0
- package/dist/infrastructure/filesystem/gateway-media-input-reader.d.ts +12 -0
- package/dist/infrastructure/filesystem/gateway-media-input-reader.js +1 -0
- package/dist/infrastructure/filesystem/local-filesystem-tool-executor.d.ts +25 -0
- package/dist/infrastructure/filesystem/local-filesystem-tool-executor.js +3 -0
- package/dist/infrastructure/filesystem/path-resolver.d.ts +20 -0
- package/dist/infrastructure/filesystem/path-resolver.js +1 -0
- package/dist/infrastructure/filesystem/workspace-media-artifact-store.d.ts +13 -0
- package/dist/infrastructure/filesystem/workspace-media-artifact-store.js +1 -0
- package/dist/infrastructure/logging/daily-rotating-file-writer.d.ts +26 -0
- package/dist/infrastructure/logging/daily-rotating-file-writer.js +2 -0
- package/dist/infrastructure/logging/log-redactor.d.ts +2 -0
- package/dist/infrastructure/logging/log-redactor.js +1 -0
- package/dist/infrastructure/logging/logging-constants.d.ts +3 -0
- package/dist/infrastructure/logging/logging-constants.js +1 -0
- package/dist/infrastructure/logging/logging-policy.d.ts +6 -0
- package/dist/infrastructure/logging/logging-policy.js +1 -0
- package/dist/infrastructure/logging/structured-logger.d.ts +24 -0
- package/dist/infrastructure/logging/structured-logger.js +4 -0
- package/dist/infrastructure/memory/file-memory-store.d.ts +37 -0
- package/dist/infrastructure/memory/file-memory-store.js +11 -0
- package/dist/infrastructure/network/safe-media-downloader.d.ts +23 -0
- package/dist/infrastructure/network/safe-media-downloader.js +1 -0
- package/dist/infrastructure/observability/tool-execution-logger.d.ts +11 -0
- package/dist/infrastructure/observability/tool-execution-logger.js +1 -0
- package/dist/infrastructure/platform/host-platform.d.ts +16 -0
- package/dist/infrastructure/platform/host-platform.js +1 -0
- package/dist/infrastructure/platform/host-process.d.ts +31 -0
- package/dist/infrastructure/platform/host-process.js +1 -0
- package/dist/infrastructure/platform/platform-constants.d.ts +4 -0
- package/dist/infrastructure/platform/platform-constants.js +1 -0
- package/dist/infrastructure/platform/platform-paths.d.ts +25 -0
- package/dist/infrastructure/platform/platform-paths.js +1 -0
- package/dist/infrastructure/platform/process-identity.d.ts +8 -0
- package/dist/infrastructure/platform/process-identity.js +1 -0
- package/dist/infrastructure/platform/process-termination.d.ts +4 -0
- package/dist/infrastructure/platform/process-termination.js +1 -0
- package/dist/infrastructure/platform/read-only-executable.d.ts +4 -0
- package/dist/infrastructure/platform/read-only-executable.js +1 -0
- package/dist/infrastructure/project/file-project-trust-store.d.ts +12 -0
- package/dist/infrastructure/project/file-project-trust-store.js +2 -0
- package/dist/infrastructure/sdk/chat-completion-adapter.d.ts +8 -0
- package/dist/infrastructure/sdk/chat-completion-adapter.js +1 -0
- package/dist/infrastructure/sdk/lotagate-client-factory.d.ts +3 -0
- package/dist/infrastructure/sdk/lotagate-client-factory.js +1 -0
- package/dist/infrastructure/sdk/model-catalog-adapter.d.ts +19 -0
- package/dist/infrastructure/sdk/model-catalog-adapter.js +1 -0
- package/dist/infrastructure/sdk/sdk-media-gateway-client.d.ts +24 -0
- package/dist/infrastructure/sdk/sdk-media-gateway-client.js +1 -0
- package/dist/infrastructure/sessions/file-goal-store.d.ts +21 -0
- package/dist/infrastructure/sessions/file-goal-store.js +1 -0
- package/dist/infrastructure/sessions/file-session-store.d.ts +50 -0
- package/dist/infrastructure/sessions/file-session-store.js +4 -0
- package/dist/infrastructure/sessions/project-session-paths.d.ts +17 -0
- package/dist/infrastructure/sessions/project-session-paths.js +1 -0
- package/dist/infrastructure/sessions/session-constants.d.ts +3 -0
- package/dist/infrastructure/sessions/session-constants.js +1 -0
- package/dist/infrastructure/sessions/session-index.d.ts +16 -0
- package/dist/infrastructure/sessions/session-index.js +3 -0
- package/dist/infrastructure/sessions/session-journal-health.d.ts +7 -0
- package/dist/infrastructure/sessions/session-journal-health.js +1 -0
- package/dist/infrastructure/sessions/session-journal.d.ts +22 -0
- package/dist/infrastructure/sessions/session-journal.js +6 -0
- package/dist/infrastructure/sessions/subagent-journal-store.d.ts +28 -0
- package/dist/infrastructure/sessions/subagent-journal-store.js +2 -0
- package/dist/infrastructure/shell/shell-tool-executor.d.ts +21 -0
- package/dist/infrastructure/shell/shell-tool-executor.js +2 -0
- package/dist/infrastructure/tokens/tiktoken-token-estimator.d.ts +18 -0
- package/dist/infrastructure/tokens/tiktoken-token-estimator.js +1 -0
- package/dist/infrastructure/tokens/token-constants.d.ts +1 -0
- package/dist/infrastructure/tokens/token-constants.js +1 -0
- package/dist/infrastructure/workspace/workspace-settings-store.d.ts +10 -0
- package/dist/infrastructure/workspace/workspace-settings-store.js +4 -0
- package/dist/main.d.ts +7 -0
- package/dist/main.js +3 -0
- package/dist/ports/cache-store.d.ts +10 -0
- package/dist/ports/cache-store.js +0 -0
- package/dist/ports/chat-model.d.ts +30 -0
- package/dist/ports/chat-model.js +0 -0
- package/dist/ports/clipboard-adapter.d.ts +7 -0
- package/dist/ports/clipboard-adapter.js +0 -0
- package/dist/ports/clipboard-text-adapter.d.ts +3 -0
- package/dist/ports/clipboard-text-adapter.js +0 -0
- package/dist/ports/credential-store.d.ts +7 -0
- package/dist/ports/credential-store.js +0 -0
- package/dist/ports/goal-store.d.ts +12 -0
- package/dist/ports/goal-store.js +0 -0
- package/dist/ports/logger.d.ts +8 -0
- package/dist/ports/logger.js +0 -0
- package/dist/ports/media-gateway-client.d.ts +60 -0
- package/dist/ports/media-gateway-client.js +0 -0
- package/dist/ports/memory-store.d.ts +26 -0
- package/dist/ports/memory-store.js +0 -0
- package/dist/ports/model-completion-client.d.ts +8 -0
- package/dist/ports/model-completion-client.js +0 -0
- package/dist/ports/model-diagnostics.d.ts +17 -0
- package/dist/ports/model-diagnostics.js +0 -0
- package/dist/ports/project-trust-store.d.ts +12 -0
- package/dist/ports/project-trust-store.js +0 -0
- package/dist/ports/session-store.d.ts +59 -0
- package/dist/ports/session-store.js +0 -0
- package/dist/ports/subagent-lifecycle.d.ts +31 -0
- package/dist/ports/subagent-lifecycle.js +0 -0
- package/dist/ports/tool-activity.d.ts +13 -0
- package/dist/ports/tool-activity.js +0 -0
- package/dist/presentation/themes/theme.d.ts +19 -0
- package/dist/presentation/themes/theme.js +1 -0
- package/dist/presentation/tui/agent-initialization-renderer.d.ts +4 -0
- package/dist/presentation/tui/agent-initialization-renderer.js +1 -0
- package/dist/presentation/tui/context-display.d.ts +21 -0
- package/dist/presentation/tui/context-display.js +2 -0
- package/dist/presentation/tui/formatters.d.ts +6 -0
- package/dist/presentation/tui/formatters.js +1 -0
- package/dist/presentation/tui/ink/choice-window.d.ts +5 -0
- package/dist/presentation/tui/ink/choice-window.js +1 -0
- package/dist/presentation/tui/ink/components/activity-animation.d.ts +3 -0
- package/dist/presentation/tui/ink/components/activity-animation.js +1 -0
- package/dist/presentation/tui/ink/components/activity-entry.d.ts +6 -0
- package/dist/presentation/tui/ink/components/activity-entry.js +1 -0
- package/dist/presentation/tui/ink/components/activity-status.d.ts +10 -0
- package/dist/presentation/tui/ink/components/activity-status.js +1 -0
- package/dist/presentation/tui/ink/components/choice-modal.d.ts +11 -0
- package/dist/presentation/tui/ink/components/choice-modal.js +1 -0
- package/dist/presentation/tui/ink/components/composer.d.ts +40 -0
- package/dist/presentation/tui/ink/components/composer.js +8 -0
- package/dist/presentation/tui/ink/components/file-diff.d.ts +6 -0
- package/dist/presentation/tui/ink/components/file-diff.js +1 -0
- package/dist/presentation/tui/ink/components/modal.d.ts +8 -0
- package/dist/presentation/tui/ink/components/modal.js +2 -0
- package/dist/presentation/tui/ink/components/shimmer-text.d.ts +8 -0
- package/dist/presentation/tui/ink/components/shimmer-text.js +1 -0
- package/dist/presentation/tui/ink/components/subagent-activity.d.ts +11 -0
- package/dist/presentation/tui/ink/components/subagent-activity.js +1 -0
- package/dist/presentation/tui/ink/components/transcript.d.ts +40 -0
- package/dist/presentation/tui/ink/components/transcript.js +5 -0
- package/dist/presentation/tui/ink/components/welcome-panel.d.ts +6 -0
- package/dist/presentation/tui/ink/components/welcome-panel.js +1 -0
- package/dist/presentation/tui/ink/lotagate-tui.d.ts +6 -0
- package/dist/presentation/tui/ink/lotagate-tui.js +2 -0
- package/dist/presentation/tui/ink/markdown-inline-renderer.d.ts +4 -0
- package/dist/presentation/tui/ink/markdown-inline-renderer.js +1 -0
- package/dist/presentation/tui/ink/markdown-inline.d.ts +13 -0
- package/dist/presentation/tui/ink/markdown-inline.js +1 -0
- package/dist/presentation/tui/ink/markdown-message.d.ts +6 -0
- package/dist/presentation/tui/ink/markdown-message.js +2 -0
- package/dist/presentation/tui/ink/markdown-table.d.ts +16 -0
- package/dist/presentation/tui/ink/markdown-table.js +1 -0
- package/dist/presentation/tui/ink/tui-bridge.d.ts +193 -0
- package/dist/presentation/tui/ink/tui-bridge.js +1 -0
- package/dist/presentation/tui/terminal-capabilities.d.ts +15 -0
- package/dist/presentation/tui/terminal-capabilities.js +1 -0
- package/dist/presentation/tui/terminal-mouse.d.ts +5 -0
- package/dist/presentation/tui/terminal-mouse.js +1 -0
- package/dist/presentation/tui/terminal-screen.d.ts +10 -0
- package/dist/presentation/tui/terminal-screen.js +1 -0
- package/dist/presentation/tui/tui-agent-event-runner.d.ts +29 -0
- package/dist/presentation/tui/tui-agent-event-runner.js +1 -0
- package/dist/presentation/tui/tui-agent-turn-controller.d.ts +45 -0
- package/dist/presentation/tui/tui-agent-turn-controller.js +1 -0
- package/dist/presentation/tui/tui-application-contract.d.ts +11 -0
- package/dist/presentation/tui/tui-application-contract.js +1 -0
- package/dist/presentation/tui/tui-application.d.ts +61 -0
- package/dist/presentation/tui/tui-application.js +3 -0
- package/dist/presentation/tui/tui-clipboard-paste-handlers.d.ts +11 -0
- package/dist/presentation/tui/tui-clipboard-paste-handlers.js +1 -0
- package/dist/presentation/tui/tui-command-context.d.ts +3 -0
- package/dist/presentation/tui/tui-command-context.js +0 -0
- package/dist/presentation/tui/tui-command-executor.d.ts +38 -0
- package/dist/presentation/tui/tui-command-executor.js +4 -0
- package/dist/presentation/tui/tui-command-host-factory.d.ts +40 -0
- package/dist/presentation/tui/tui-command-host-factory.js +1 -0
- package/dist/presentation/tui/tui-context-compaction.d.ts +8 -0
- package/dist/presentation/tui/tui-context-compaction.js +1 -0
- package/dist/presentation/tui/tui-context-service.d.ts +2 -0
- package/dist/presentation/tui/tui-context-service.js +1 -0
- package/dist/presentation/tui/tui-extension-loader.d.ts +21 -0
- package/dist/presentation/tui/tui-extension-loader.js +1 -0
- package/dist/presentation/tui/tui-file-suggestions.d.ts +3 -0
- package/dist/presentation/tui/tui-file-suggestions.js +1 -0
- package/dist/presentation/tui/tui-goal-controller.d.ts +14 -0
- package/dist/presentation/tui/tui-goal-controller.js +1 -0
- package/dist/presentation/tui/tui-initial-model.d.ts +3 -0
- package/dist/presentation/tui/tui-initial-model.js +1 -0
- package/dist/presentation/tui/tui-lifecycle-actions.d.ts +13 -0
- package/dist/presentation/tui/tui-lifecycle-actions.js +1 -0
- package/dist/presentation/tui/tui-manual-compaction.d.ts +18 -0
- package/dist/presentation/tui/tui-manual-compaction.js +1 -0
- package/dist/presentation/tui/tui-media-model-selection.d.ts +12 -0
- package/dist/presentation/tui/tui-media-model-selection.js +1 -0
- package/dist/presentation/tui/tui-prompt-dispatcher.d.ts +16 -0
- package/dist/presentation/tui/tui-prompt-dispatcher.js +1 -0
- package/dist/presentation/tui/tui-skill-controller.d.ts +11 -0
- package/dist/presentation/tui/tui-skill-controller.js +3 -0
- package/dist/presentation/tui/tui-tool-approval.d.ts +22 -0
- package/dist/presentation/tui/tui-tool-approval.js +1 -0
- package/dist/version.d.ts +1 -0
- package/dist/version.js +1 -0
- package/native-targets.mjs +1 -1
- package/package.json +13 -12
- package/scripts/install-native.mjs +5 -13
- package/skills/architecture-review/SKILL.md +41 -14
- package/skills/code-review/SKILL.md +41 -12
- package/skills/debugging/SKILL.md +49 -12
- package/skills/documentation/SKILL.md +43 -9
- package/skills/feature-implementation/SKILL.md +58 -19
- package/bin/lotagate.exe +0 -1
- package/skills/api-contract-review/SKILL.md +0 -17
- package/skills/database-review/SKILL.md +0 -17
- package/skills/dependency-review/SKILL.md +0 -16
- package/skills/frontend-review/SKILL.md +0 -18
- package/skills/incident-response/SKILL.md +0 -18
- package/skills/performance-review/SKILL.md +0 -17
- package/skills/refactor/SKILL.md +0 -23
- package/skills/release-readiness/SKILL.md +0 -16
- package/skills/security-review/SKILL.md +0 -16
- package/skills/test-plan/SKILL.md +0 -22
- package/skills/verify/SKILL.md +0 -13
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{CliError as E}from"../errors/cli-error.js";import{CLI_ERROR_CODES as I}from"../errors/error-codes.js";import{DEFAULT_MEDIA_DOWNLOAD_TIMEOUT_MS as O,DEFAULT_VIDEO_POLL_INTERVAL_MS as A,DEFAULT_VIDEO_WAIT_TIMEOUT_MS as n}from"./media-constants.js";function D(t=process.env){const _=r(t,"LOTAGATE_VIDEO_POLL_INTERVAL_MS",A),o=r(t,"LOTAGATE_VIDEO_WAIT_TIMEOUT_MS",n);if(o<_)throw T("LOTAGATE_VIDEO_WAIT_TIMEOUT_MS must not be smaller than LOTAGATE_VIDEO_POLL_INTERVAL_MS.");return{videoPollIntervalMs:_,videoWaitTimeoutMs:o,downloadTimeoutMs:r(t,"LOTAGATE_MEDIA_DOWNLOAD_TIMEOUT_MS",O)}}function r(t,_,o){const e=t[_];if(e===void 0||e.trim().length===0)return o;if(!/^\d+$/u.test(e))throw T(`${_} must be a positive integer.`);const i=Number(e);if(!Number.isSafeInteger(i)||i<=0)throw T(`${_} must be a positive integer.`);return i}function T(t){return new E(I.CONFIG_SCHEMA_INVALID,t,{category:"config",userMessage:t})}export{D as resolveMediaExecutionPolicy};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const o=2,t=1.2,_=.75;export{_ as BM25_B,t as BM25_K1,o as SEARCH_TOKEN_MIN_LENGTH};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { IntentKind } from '../intent/intent-contract.js';
|
|
2
|
+
export declare const MEMORY_KINDS: readonly ["fact", "preference", "decision", "constraint", "goal", "procedure", "episodic", "lesson"];
|
|
3
|
+
export type MemoryKind = typeof MEMORY_KINDS[number];
|
|
4
|
+
export interface MemoryKindDefinition {
|
|
5
|
+
readonly id: MemoryKind;
|
|
6
|
+
readonly description: string;
|
|
7
|
+
readonly captureSignals: readonly string[];
|
|
8
|
+
readonly intentKinds: readonly IntentKind[];
|
|
9
|
+
readonly retrievalRole: 'grounding' | 'behavior' | 'control' | 'planning' | 'workflow' | 'experience';
|
|
10
|
+
readonly freshness: 'stable' | 'latest' | 'expiring' | 'decaying';
|
|
11
|
+
readonly consolidationPolicy: 'merge' | 'supersede' | 'retain' | 'retain-on-conflict';
|
|
12
|
+
}
|
|
13
|
+
export declare const MEMORY_KIND_DEFINITIONS: readonly MemoryKindDefinition[];
|
|
14
|
+
export declare function isMemoryKind(value: unknown): value is MemoryKind;
|
|
15
|
+
export declare function memoryKindDefinition(kind: MemoryKind): MemoryKindDefinition;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const o=["fact","preference","decision","constraint","goal","procedure","episodic","lesson"],i=[{id:"fact",description:"A stable declarative fact about the user, project, or environment.",captureSignals:["is","uses","has","located"],intentKinds:["answer","research","change","automation"],retrievalRole:"grounding",freshness:"stable",consolidationPolicy:"retain-on-conflict"},{id:"preference",description:"A user preference about how the agent should behave or communicate.",captureSignals:["prefer","always","do not","style"],intentKinds:["answer","research"],retrievalRole:"behavior",freshness:"latest",consolidationPolicy:"supersede"},{id:"decision",description:"An accepted choice and its rationale that can be superseded later.",captureSignals:["decided","choose","approved","will use"],intentKinds:["answer","research","change","automation"],retrievalRole:"control",freshness:"latest",consolidationPolicy:"supersede"},{id:"constraint",description:"An active rule describing what the agent must or must not do.",captureSignals:["must","must not","required","never"],intentKinds:["change","automation"],retrievalRole:"control",freshness:"stable",consolidationPolicy:"retain-on-conflict"},{id:"goal",description:"A durable future objective that is distinct from one running session goal.",captureSignals:["want to","goal","plan to","target"],intentKinds:["change","automation"],retrievalRole:"planning",freshness:"expiring",consolidationPolicy:"supersede"},{id:"procedure",description:"A reusable workflow or method for accomplishing an operation.",captureSignals:["step","workflow","run","process"],intentKinds:["change","automation"],retrievalRole:"workflow",freshness:"latest",consolidationPolicy:"supersede"},{id:"episodic",description:"A bounded past event, outcome, or failure with temporal context.",captureSignals:["completed","failed","happened","outcome"],intentKinds:["research","change","automation"],retrievalRole:"experience",freshness:"decaying",consolidationPolicy:"retain"},{id:"lesson",description:"A generalizable lesson distilled from one or more past experiences.",captureSignals:["learned","lesson","avoid","because"],intentKinds:["research","change","automation"],retrievalRole:"experience",freshness:"decaying",consolidationPolicy:"merge"}];function t(e){return typeof e=="string"&&o.includes(e)}function r(e){return i.find(n=>n.id===e)}export{o as MEMORY_KINDS,i as MEMORY_KIND_DEFINITIONS,t as isMemoryKind,r as memoryKindDefinition};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{MEMORY_KIND_DEFINITIONS as n}from"./memory-kinds.js";function i(r){return r===void 0?void 0:n.filter(e=>e.intentKinds.includes(r)).map(e=>e.id)}export{i as preferredMemoryKinds};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { MemoryKind } from './memory-kinds.js';
|
|
2
|
+
import type { MemoryRecord } from './memory.js';
|
|
3
|
+
export interface MemorySearchQuery {
|
|
4
|
+
readonly text: string;
|
|
5
|
+
readonly maximum: number;
|
|
6
|
+
readonly preferredKinds?: readonly MemoryKind[];
|
|
7
|
+
}
|
|
8
|
+
export interface MemorySearchHit {
|
|
9
|
+
readonly record: MemoryRecord;
|
|
10
|
+
readonly lexicalScore: number;
|
|
11
|
+
readonly rank: number;
|
|
12
|
+
}
|
|
13
|
+
export interface MemorySemanticHit {
|
|
14
|
+
readonly record: MemoryRecord;
|
|
15
|
+
readonly similarity: number;
|
|
16
|
+
readonly rank: number;
|
|
17
|
+
}
|
|
18
|
+
export interface MemorySearchDocument {
|
|
19
|
+
readonly id: string;
|
|
20
|
+
readonly termFrequency: Readonly<Record<string, number>>;
|
|
21
|
+
readonly length: number;
|
|
22
|
+
}
|
|
23
|
+
export interface MemorySearchIndex {
|
|
24
|
+
readonly documents: Readonly<Record<string, MemorySearchDocument>>;
|
|
25
|
+
readonly postings: Readonly<Record<string, readonly string[]>>;
|
|
26
|
+
readonly documentFrequency: Readonly<Record<string, number>>;
|
|
27
|
+
readonly averageDocumentLength: number;
|
|
28
|
+
}
|
|
29
|
+
export declare function buildMemorySearchIndex(records: readonly MemoryRecord[]): MemorySearchIndex;
|
|
30
|
+
export declare function searchMemoryIndex(recordsById: Readonly<Record<string, MemoryRecord>>, index: MemorySearchIndex, query: MemorySearchQuery): readonly MemorySearchHit[];
|
|
31
|
+
export declare function normalizeSearchText(value: string): string;
|
|
32
|
+
export declare function uniqueTokens(value: string): readonly string[];
|
|
33
|
+
export declare function isMemoryRetrievable(record: MemoryRecord, now?: number): boolean;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{BM25_B as d,BM25_K1 as f,SEARCH_TOKEN_MIN_LENGTH as h}from"./memory-constants.js";function k(e){const n=new Map,c={};let i=0;for(const r of e){const t=new Map;for(const s of y(r))t.set(s,(t.get(s)??0)+1);const o=Object.fromEntries(t.entries()),a=Object.values(o).reduce((s,l)=>s+l,0);c[r.id]={id:r.id,termFrequency:o,length:a},i+=a;for(const s of t.keys()){const l=n.get(s)??new Set;l.add(r.id),n.set(s,l)}}const u=Object.fromEntries([...n.entries()].map(([r,t])=>[r,[...t].sort()])),m=Object.fromEntries(Object.entries(u).map(([r,t])=>[r,t.length]));return{documents:c,postings:u,documentFrequency:m,averageDocumentLength:e.length===0?0:i/e.length}}function F(e,n,c){if(c.maximum<=0)return[];const i=p(c.text);if(i.length===0)return[];const u=new Set;for(const t of i)for(const o of n.postings[t]??[])u.add(o);const m=Object.keys(n.documents).length,r=[...u].flatMap(t=>{const o=e[t],a=n.documents[t];if(o===void 0||a===void 0||!b(o))return[];const s=M(a,i,n,m);return s>0?[{record:o,lexicalScore:s,rank:0}]:[]});return r.sort((t,o)=>o.lexicalScore-t.lexicalScore||o.record.updatedAt.localeCompare(t.record.updatedAt)||t.record.id.localeCompare(o.record.id)),r.slice(0,c.maximum).map((t,o)=>({...t,rank:o+1}))}function x(e){return e.normalize("NFKC").toLocaleLowerCase()}function p(e){const n=x(e),c=n.normalize("NFD").replace(/[\u0300-\u036f]/gu,"");return[...new Set([...g(n),...g(c)])]}function b(e,n=Date.now()){return e.state==="active"&&(e.expiresAt===void 0||Date.parse(e.expiresAt)>n)}function y(e){return p([e.statement,e.rationale??"",...e.topics].join(`
|
|
2
|
+
`))}function g(e){return e.split(/[^\p{L}\p{N}_-]+/u).filter(n=>n.length>=h)}function M(e,n,c,i){return c.averageDocumentLength<=0||e.length<=0?0:n.reduce((u,m)=>{const r=e.termFrequency[m]??0,t=c.documentFrequency[m]??0;if(r===0||t===0)return u;const o=Math.log(1+(i-t+.5)/(t+.5)),a=r+f*(1-d+d*e.length/c.averageDocumentLength);return u+o*r*(f+1)/a},0)}export{k as buildMemorySearchIndex,b as isMemoryRetrievable,x as normalizeSearchText,F as searchMemoryIndex,p as uniqueTokens};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { type MemoryKind } from './memory-kinds.js';
|
|
2
|
+
export { MEMORY_KINDS, isMemoryKind } from './memory-kinds.js';
|
|
3
|
+
export type { MemoryKind } from './memory-kinds.js';
|
|
4
|
+
export declare const MEMORY_SCHEMA_VERSION: 2;
|
|
5
|
+
export declare const MEMORY_STATES: readonly ["active", "superseded", "expired"];
|
|
6
|
+
export declare const MEMORY_SOURCES: readonly ["user-explicit", "host-evidence", "model-inferred", "imported"];
|
|
7
|
+
export type MemoryState = typeof MEMORY_STATES[number];
|
|
8
|
+
export type MemorySource = typeof MEMORY_SOURCES[number];
|
|
9
|
+
export interface MemoryRecord {
|
|
10
|
+
readonly id: string;
|
|
11
|
+
readonly kind: MemoryKind;
|
|
12
|
+
readonly state: MemoryState;
|
|
13
|
+
readonly statement: string;
|
|
14
|
+
readonly rationale?: string;
|
|
15
|
+
readonly topics: readonly string[];
|
|
16
|
+
readonly source: MemorySource;
|
|
17
|
+
readonly evidenceRefs: readonly string[];
|
|
18
|
+
readonly supersedes: readonly string[];
|
|
19
|
+
readonly createdAt: string;
|
|
20
|
+
readonly updatedAt: string;
|
|
21
|
+
readonly expiresAt?: string;
|
|
22
|
+
readonly lastRetrievedAt?: string;
|
|
23
|
+
readonly retrievalCount: number;
|
|
24
|
+
}
|
|
25
|
+
export interface MemoryDraft {
|
|
26
|
+
readonly kind: MemoryKind;
|
|
27
|
+
readonly state?: MemoryState;
|
|
28
|
+
readonly statement: string;
|
|
29
|
+
readonly rationale?: string;
|
|
30
|
+
readonly topics?: readonly string[];
|
|
31
|
+
readonly source?: MemorySource;
|
|
32
|
+
readonly evidenceRefs?: readonly string[];
|
|
33
|
+
readonly supersedes?: readonly string[];
|
|
34
|
+
readonly expiresAt?: string;
|
|
35
|
+
}
|
|
36
|
+
export interface MemoryBundle {
|
|
37
|
+
readonly schemaVersion: typeof MEMORY_SCHEMA_VERSION;
|
|
38
|
+
readonly exportedAt: string;
|
|
39
|
+
readonly records: readonly MemoryRecord[];
|
|
40
|
+
}
|
|
41
|
+
export declare function isMemoryState(value: unknown): value is MemoryState;
|
|
42
|
+
export declare function isMemorySource(value: unknown): value is MemorySource;
|
|
43
|
+
export declare function normalizeMemoryDraft(input: MemoryDraft): MemoryDraft;
|
|
44
|
+
export declare function normalizeMemoryRecord(value: unknown): MemoryRecord;
|
|
45
|
+
export declare function normalizeMemoryBundle(value: unknown): MemoryBundle;
|
|
46
|
+
export declare function memoryRecordFromDraft(id: string, draft: MemoryDraft, timestamp: string): MemoryRecord;
|
|
47
|
+
/** Returns the record state visible to callers without rewriting the journal. */
|
|
48
|
+
export declare function effectiveMemoryRecord(record: MemoryRecord, now?: number): MemoryRecord;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{CliError as M}from"../errors/cli-error.js";import{CLI_ERROR_CODES as g}from"../errors/error-codes.js";import{RESOURCE_LIMITS as n}from"../runtime/resource-limits.js";import{findUnexpectedRecordKey as c,isRecord as f}from"../validation/record-schema.js";import{isMemoryKind as p}from"./memory-kinds.js";import{MEMORY_KINDS as U,isMemoryKind as q}from"./memory-kinds.js";const y=2,l=["active","superseded","expired"],w=["user-explicit","host-evidence","model-inferred","imported"];function u(e){return typeof e=="string"&&l.includes(e)}function A(e){return typeof e=="string"&&w.includes(e)}function S(e){const r=c(e,["kind","state","statement","rationale","topics","source","evidenceRefs","supersedes","expiresAt"]);if(r!==void 0)throw o(`Unsupported memory draft field: ${r}.`);return{kind:m(e.kind,p,"memory kind"),...e.state===void 0?{}:{state:m(e.state,u,"memory state")},statement:d(e.statement,n.memoryStatementBytes,"memory statement"),...e.rationale===void 0?{}:{rationale:d(e.rationale,n.memoryRationaleBytes,"memory rationale")},topics:x(e.topics??[]),source:e.source===void 0?"model-inferred":m(e.source,A,"memory source"),evidenceRefs:R(e.evidenceRefs??[]),supersedes:h(e.supersedes??[],"memory supersedes"),...e.expiresAt===void 0?{}:{expiresAt:s(e.expiresAt,"memory expiresAt")}}}function E(e){if(!f(e))throw o("Memory record must be an object.");const r=c(e,["id","kind","state","statement","rationale","topics","source","evidenceRefs","supersedes","createdAt","updatedAt","expiresAt","lastRetrievedAt","retrievalCount"]);if(r!==void 0)throw o(`Unsupported memory record field: ${r}.`);return{id:a(e.id),kind:m(e.kind,p,"memory kind"),state:m(e.state,u,"memory state"),statement:d(e.statement,n.memoryStatementBytes,"memory statement"),topics:x(e.topics),source:m(e.source,A,"memory source"),evidenceRefs:R(e.evidenceRefs),supersedes:h(e.supersedes,"memory supersedes"),createdAt:s(e.createdAt,"memory createdAt"),updatedAt:s(e.updatedAt,"memory updatedAt"),retrievalCount:b(e.retrievalCount,"memory retrievalCount"),...e.rationale===void 0?{}:{rationale:d(e.rationale,n.memoryRationaleBytes,"memory rationale")},...e.expiresAt===void 0?{}:{expiresAt:s(e.expiresAt,"memory expiresAt")},...e.lastRetrievedAt===void 0?{}:{lastRetrievedAt:s(e.lastRetrievedAt,"memory lastRetrievedAt")}}}function N(e){if(!f(e))throw o("Memory bundle must be an object.");const r=c(e,["schemaVersion","exportedAt","records"]);if(r!==void 0)throw o(`Unsupported memory bundle field: ${r}.`);if(e.schemaVersion!==y)throw o("Unsupported memory bundle schema version.");if(!Array.isArray(e.records)||e.records.length>n.memoryRecords)throw o("Memory bundle records are invalid or exceed the supported limit.");return{schemaVersion:y,exportedAt:s(e.exportedAt,"memory exportedAt"),records:e.records.map(i=>E(i))}}function $(e,r,i){const t=S(r);return{id:a(e),kind:t.kind,state:t.state??"active",statement:t.statement,topics:t.topics??[],source:t.source??"model-inferred",evidenceRefs:t.evidenceRefs??[],supersedes:t.supersedes??[],createdAt:s(i,"memory timestamp"),updatedAt:s(i,"memory timestamp"),retrievalCount:0,...t.rationale===void 0?{}:{rationale:t.rationale},...t.expiresAt===void 0?{}:{expiresAt:t.expiresAt}}}function B(e,r=Date.now()){return e.state==="active"&&e.expiresAt!==void 0&&Date.parse(e.expiresAt)<=r?{...e,state:"expired"}:e}function x(e){if(!Array.isArray(e)||e.length>n.memoryTopics||e.some(r=>typeof r!="string"))throw o("Memory topics are invalid.");return[...new Set(e.map(r=>r.trim()).filter(r=>r.length>0).map(r=>d(r,n.memoryTopicBytes,"memory topic")))].sort()}function R(e){if(!Array.isArray(e)||e.length>n.memoryEvidenceReferences||e.some(r=>typeof r!="string"))throw o("Memory evidence references are invalid.");return I(e,n.memoryEvidenceReferenceBytes,"memory evidence reference")}function h(e,r){if(!Array.isArray(e)||e.length>n.memorySupersedes||e.some(i=>typeof i!="string"))throw o(`${r} are invalid.`);return[...new Set(e.map(i=>a(i)))]}function I(e,r,i){return[...new Set(e.map(t=>t.trim()).map(t=>d(t,r,i)))]}function m(e,r,i){if(!r(e))throw o(`Invalid ${i}.`);return e}function d(e,r,i){if(typeof e!="string"||e.trim().length===0||Buffer.byteLength(e,"utf8")>r)throw o(`Invalid ${i}.`);return e.trim()}function a(e){if(typeof e!="string"||!/^[A-Za-z0-9_-]{1,128}$/u.test(e))throw o("Invalid memory id.");return e}function s(e,r){if(typeof e!="string"||Number.isNaN(Date.parse(e)))throw o(`Invalid ${r}.`);return e}function b(e,r){if(typeof e!="number"||!Number.isSafeInteger(e)||e<0)throw o(`Invalid ${r}.`);return e}function o(e){return new M(g.MEMORY_INVALID,e,{category:"memory",userMessage:e})}export{U as MEMORY_KINDS,y as MEMORY_SCHEMA_VERSION,w as MEMORY_SOURCES,l as MEMORY_STATES,B as effectiveMemoryRecord,q as isMemoryKind,A as isMemorySource,u as isMemoryState,$ as memoryRecordFromDraft,N as normalizeMemoryBundle,S as normalizeMemoryDraft,E as normalizeMemoryRecord};
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
export type GoalStatus = 'active' | 'paused' | 'completed' | 'blocked' | 'budget_limited' | 'usage_limited';
|
|
2
|
+
export type GoalDecision = 'continue' | 'complete' | 'blocked' | 'budget_limited' | 'usage_limited';
|
|
3
|
+
export interface GoalEvaluation {
|
|
4
|
+
decision: GoalDecision;
|
|
5
|
+
reason: string;
|
|
6
|
+
evidence: readonly string[];
|
|
7
|
+
timestamp: string;
|
|
8
|
+
evaluatorModel?: string;
|
|
9
|
+
}
|
|
10
|
+
export interface GoalUsage {
|
|
11
|
+
inputTokens: number;
|
|
12
|
+
outputTokens: number;
|
|
13
|
+
totalTokens: number;
|
|
14
|
+
modelCalls: number;
|
|
15
|
+
estimated: boolean;
|
|
16
|
+
}
|
|
17
|
+
export interface GoalUsageDelta {
|
|
18
|
+
inputTokens?: number;
|
|
19
|
+
outputTokens?: number;
|
|
20
|
+
totalTokens?: number;
|
|
21
|
+
modelCalls?: number;
|
|
22
|
+
estimated?: boolean;
|
|
23
|
+
}
|
|
24
|
+
export interface GoalState {
|
|
25
|
+
id: string;
|
|
26
|
+
sessionId: string;
|
|
27
|
+
objective: string;
|
|
28
|
+
status: GoalStatus;
|
|
29
|
+
createdAt: string;
|
|
30
|
+
updatedAt: string;
|
|
31
|
+
startedAt: string;
|
|
32
|
+
turns: number;
|
|
33
|
+
evaluatorRuns: number;
|
|
34
|
+
usage: GoalUsage;
|
|
35
|
+
tokenBudget?: number;
|
|
36
|
+
maxTurns?: number;
|
|
37
|
+
maxDurationMs?: number;
|
|
38
|
+
lastEvaluation?: GoalEvaluation;
|
|
39
|
+
lastError?: string;
|
|
40
|
+
}
|
|
41
|
+
export interface CreateGoalInput {
|
|
42
|
+
objective: string;
|
|
43
|
+
tokenBudget?: number;
|
|
44
|
+
maxTurns?: number;
|
|
45
|
+
maxDurationMs?: number;
|
|
46
|
+
}
|
|
47
|
+
export declare function validateGoalInput(input: CreateGoalInput): CreateGoalInput;
|
|
48
|
+
/** Identifies journal events that must carry a complete goal snapshot. */
|
|
49
|
+
export declare function isGoalEventType(value: string): boolean;
|
|
50
|
+
/** Validates the complete durable goal state before it controls execution limits. */
|
|
51
|
+
export declare function isGoalState(value: unknown): value is GoalState;
|
|
52
|
+
/** Validates the durable evaluator result embedded in a goal snapshot. */
|
|
53
|
+
export declare function isGoalEvaluation(value: unknown): value is GoalEvaluation;
|
|
54
|
+
/** Validates the data payload written by a durable goal lifecycle event. */
|
|
55
|
+
export declare function isPersistedGoalEventData(value: unknown): boolean;
|
|
56
|
+
export declare function addGoalUsage(current: GoalUsage, delta: GoalUsageDelta): GoalUsage;
|
|
57
|
+
export declare const EMPTY_GOAL_USAGE: GoalUsage;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{RESOURCE_LIMITS as n}from"../runtime/resource-limits.js";import{CliError as c}from"../errors/cli-error.js";import{CLI_ERROR_CODES as p}from"../errors/error-codes.js";const l=new Set(["goal.created","goal.replaced","goal.paused","goal.resumed","goal.evaluated","goal.completed","goal.blocked","goal.budget_limited","goal.usage_limited","goal.usage_recorded","goal.cleared","goal.turn.started"]);function S(t){const e=t.objective.trim();if(e.length===0||Buffer.byteLength(e,"utf8")>n.goalObjectiveBytes||/\0/u.test(e))throw d(`Goal objective must contain between 1 and ${n.goalObjectiveBytes} bytes and must not contain null characters.`);for(const[r,i]of Object.entries(t))if(!(r==="objective"||i===void 0)&&(!Number.isSafeInteger(i)||i<=0))throw d(`Goal limit ${r} must be a positive integer.`);if(t.maxDurationMs!==void 0&&t.maxDurationMs>n.goalMaximumMaxDurationMs)throw d("Goal maxDurationMs cannot exceed the supported maximum.");return{objective:e,...t.tokenBudget===void 0?{}:{tokenBudget:t.tokenBudget},...t.maxTurns===void 0?{}:{maxTurns:t.maxTurns},...t.maxDurationMs===void 0?{}:{maxDurationMs:t.maxDurationMs}}}function B(t){return l.has(t)}function b(t){return a(t)?typeof t.id=="string"&&typeof t.sessionId=="string"&&G(t.objective)&&y(t.status)&&f(t.createdAt)&&f(t.updatedAt)&&f(t.startedAt)&&o(t.turns)&&o(t.evaluatorRuns)&&k(t.usage)&&g(t.tokenBudget)&&g(t.maxTurns)&&E(t.maxDurationMs)&&x(t.lastEvaluation)&&(t.lastError===void 0||typeof t.lastError=="string"&&Buffer.byteLength(t.lastError,"utf8")<=n.goalReasonBytes):!1}function u(t){return a(t)?T(t.decision)&&typeof t.reason=="string"&&Buffer.byteLength(t.reason,"utf8")<=n.goalReasonBytes&&Array.isArray(t.evidence)&&t.evidence.length<=n.goalEvidenceItems&&t.evidence.every(e=>typeof e=="string"&&Buffer.byteLength(e,"utf8")<=n.goalEvidenceBytes)&&f(t.timestamp)&&(t.evaluatorModel===void 0||typeof t.evaluatorModel=="string"):!1}function D(t){return!a(t)||!b(t.goal)?!1:t.evaluation===void 0||u(t.evaluation)}function h(t,e){const r=s(t.inputTokens+(e.inputTokens??0)),i=s(t.outputTokens+(e.outputTokens??0)),m=s(t.totalTokens+(e.totalTokens??(e.inputTokens??0)+(e.outputTokens??0)));return{inputTokens:r,outputTokens:i,totalTokens:m,modelCalls:s(t.modelCalls+(e.modelCalls??0)),estimated:t.estimated||e.estimated===!0}}const A=Object.freeze({inputTokens:0,outputTokens:0,totalTokens:0,modelCalls:0,estimated:!1});function s(t){return Number.isSafeInteger(t)&&t>=0?t:Number.MAX_SAFE_INTEGER}function a(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function y(t){return t==="active"||t==="paused"||t==="completed"||t==="blocked"||t==="budget_limited"||t==="usage_limited"}function T(t){return t==="continue"||t==="complete"||t==="blocked"||t==="budget_limited"||t==="usage_limited"}function k(t){return a(t)?o(t.inputTokens)&&o(t.outputTokens)&&o(t.totalTokens)&&o(t.modelCalls)&&typeof t.estimated=="boolean":!1}function x(t){return t===void 0||u(t)}function g(t){return t===void 0||typeof t=="number"&&Number.isSafeInteger(t)&&t>0}function E(t){return t===void 0||typeof t=="number"&&Number.isSafeInteger(t)&&t>0&&t<=n.goalMaximumMaxDurationMs}function o(t){return typeof t=="number"&&Number.isSafeInteger(t)&&t>=0}function f(t){return typeof t=="string"&&Number.isFinite(Date.parse(t))}function G(t){return typeof t=="string"&&t.trim().length>0&&Buffer.byteLength(t,"utf8")<=n.goalObjectiveBytes&&!/\0/u.test(t)}function d(t){return new c(p.INVALID_ARGUMENT,t,{category:"goal",userMessage:t})}export{A as EMPTY_GOAL_USAGE,h as addGoalUsage,u as isGoalEvaluation,B as isGoalEventType,b as isGoalState,D as isPersistedGoalEventData,S as validateGoalInput};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const t=["Atlas","Nova","Orion","Sage","Lyra","Ember","Aster","Coda"];function r(e){const a=Math.max(0,Math.floor(e)),n=t[a%t.length]??"Agent",o=Math.floor(a/t.length)+1;return o===1?n:`${n} ${o}`}export{r as subagentDisplayName};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export type SubagentStatus = 'queued' | 'running' | 'completed' | 'completed_with_warning' | 'failed' | 'cancelled';
|
|
2
|
+
export type SubagentLimitReason = 'iteration' | 'timeout' | 'tokens' | 'tool_calls';
|
|
3
|
+
export type SubagentMode = 'research' | 'worker';
|
|
4
|
+
export interface SubagentHandoff {
|
|
5
|
+
readonly summary: string;
|
|
6
|
+
readonly filesInspected: readonly string[];
|
|
7
|
+
readonly filesChanged: readonly string[];
|
|
8
|
+
readonly commandsRun: readonly string[];
|
|
9
|
+
readonly verification: readonly string[];
|
|
10
|
+
readonly warnings: readonly string[];
|
|
11
|
+
}
|
|
12
|
+
export interface SubagentRequest {
|
|
13
|
+
readonly task: string;
|
|
14
|
+
readonly context?: string;
|
|
15
|
+
readonly model?: string;
|
|
16
|
+
readonly mode?: SubagentMode;
|
|
17
|
+
readonly background?: boolean;
|
|
18
|
+
readonly writeScope?: readonly string[];
|
|
19
|
+
}
|
|
20
|
+
export interface SubagentResult {
|
|
21
|
+
readonly id: string;
|
|
22
|
+
readonly displayName: string;
|
|
23
|
+
readonly task: string;
|
|
24
|
+
readonly status: SubagentStatus;
|
|
25
|
+
readonly mode: SubagentMode;
|
|
26
|
+
readonly model: string;
|
|
27
|
+
readonly summary: string;
|
|
28
|
+
readonly handoff: SubagentHandoff;
|
|
29
|
+
readonly toolsUsed: readonly string[];
|
|
30
|
+
readonly estimatedTokens?: number;
|
|
31
|
+
readonly limitReason?: SubagentLimitReason;
|
|
32
|
+
readonly durationMs: number;
|
|
33
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export type WorkItemStatus = 'queued' | 'active' | 'completed' | 'failed' | 'blocked';
|
|
2
|
+
export interface WorkItem {
|
|
3
|
+
id: string;
|
|
4
|
+
title: string;
|
|
5
|
+
description: string;
|
|
6
|
+
dependencies: readonly string[];
|
|
7
|
+
status: WorkItemStatus;
|
|
8
|
+
assignedAgent?: string;
|
|
9
|
+
}
|
|
10
|
+
export interface SchedulerLimits {
|
|
11
|
+
maxConcurrency: number;
|
|
12
|
+
maxTasks: number;
|
|
13
|
+
maxDurationMs: number;
|
|
14
|
+
maxTokens?: number;
|
|
15
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import r from"node:crypto";function a(t,e){return r.createHash("sha256").update(`${t}\0${e??""}`,"utf8").digest("hex")}export{a as createProjectFingerprint};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Repairs an SSE frame prefix only when a compatibility gateway attaches it
|
|
3
|
+
* directly to preceding assistant text. Prefixes after whitespace or at the
|
|
4
|
+
* beginning of a new line are preserved because they can be intentional text
|
|
5
|
+
* or code.
|
|
6
|
+
*/
|
|
7
|
+
export declare class AssistantDeltaNormalizer {
|
|
8
|
+
private previousCharacter;
|
|
9
|
+
normalize(content: string): string;
|
|
10
|
+
private isAttachedToAssistantText;
|
|
11
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
class n{previousCharacter;normalize(s){const t=s.replace(/data:\s+/gu,(e,a,r)=>this.isAttachedToAssistantText(r,a)?"":e);return t.length>0&&(this.previousCharacter=t.at(-1)),t}isAttachedToAssistantText(s,t){const e=t===0?this.previousCharacter:s.at(t-1);return e!==void 0&&!/\s/.test(e)}}export{n as AssistantDeltaNormalizer};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Converts a provider assistant frame into the text that has not already been
|
|
3
|
+
* emitted for the current model segment.
|
|
4
|
+
*
|
|
5
|
+
* Providers normally send incremental frames, but compatibility gateways can
|
|
6
|
+
* send cumulative snapshots or replay an already-complete text fragment. The
|
|
7
|
+
* model boundary is the single place where those representations are
|
|
8
|
+
* normalized before they reach the Agent SDK and the desktop JSONL protocol.
|
|
9
|
+
*/
|
|
10
|
+
export declare function normalizeAssistantDelta(previousText: string, incomingDelta: string): string;
|
|
11
|
+
export declare function mergeAssistantText(previousText: string, incomingDelta: string): string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function d(t,n){if(n.length===0)return"";const i=n.startsWith(t)?n.slice(t.length):n,r=f(i);return r.length===0||t.endsWith(r)&&c(r)?"":r}function h(t,n){return`${t}${d(t,n)}`}function f(t){if(t.length<2)return t;const n=new Array(t.length).fill(0);for(let s=1;s<t.length;s+=1){let e=n[s-1]??0;for(;e>0&&t[s]!==t[e];)e=n[e-1]??0;t[s]===t[e]&&(e+=1),n[s]=e}const i=n.at(-1)??0,r=t.length-i,o=t.slice(0,r);return i>0&&t.length%r===0&&c(o)?o:t}function c(t){const n=t.trimEnd().at(-1);return n!==void 0&&/[\p{P}\p{S}]/u.test(n)}export{h as mergeAssistantText,d as normalizeAssistantDelta};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/** Public Gateway JSON body limit mirrored from the server and SDK contract. */
|
|
2
|
+
export declare const GATEWAY_JSON_BODY_LIMIT_BYTES: number;
|
|
3
|
+
export declare const GATEWAY_JSON_NEAR_LIMIT_RATIO = 0.8;
|
|
4
|
+
export interface GatewayAttachmentBudgetInput {
|
|
5
|
+
readonly byteLength: number;
|
|
6
|
+
readonly mimeType: string;
|
|
7
|
+
readonly name?: string;
|
|
8
|
+
}
|
|
9
|
+
export interface GatewayRequestBudget {
|
|
10
|
+
readonly projectedBytes: number;
|
|
11
|
+
readonly limitBytes: number;
|
|
12
|
+
readonly remainingBytes: number;
|
|
13
|
+
readonly utilization: number;
|
|
14
|
+
readonly isWithinLimit: boolean;
|
|
15
|
+
readonly isNearLimit: boolean;
|
|
16
|
+
}
|
|
17
|
+
export declare function estimateGatewayMessageBytes(prompt: string, attachments?: readonly GatewayAttachmentBudgetInput[]): number;
|
|
18
|
+
export declare function evaluateGatewayRequestBudget(prompt: string, attachments?: readonly GatewayAttachmentBudgetInput[], reservedBytes?: number): GatewayRequestBudget;
|
|
19
|
+
export declare function base64ByteLength(byteLength: number): number;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const T=2e7,u=.8;function a(e,t=[]){const i=t.length===0?{role:"user",content:e}:{role:"user",content:[{type:"text",text:e},...t.map(o)]};return Buffer.byteLength(JSON.stringify({messages:[i]}),"utf8")+t.reduce((_,r)=>_+s(r.byteLength),0)}function A(e,t=[],i=0){const n=a(e,t)+Math.max(0,i),_=2e7-n;return{projectedBytes:n,limitBytes:2e7,remainingBytes:_,utilization:n/2e7,isWithinLimit:n<=2e7,isNearLimit:n>=2e7*.8}}function s(e){if(!Number.isSafeInteger(e)||e<0)throw new RangeError("Attachment byte length must be a non-negative safe integer.");return Math.ceil(e/3)*4}function o(e){const t=`data:${e.mimeType};base64:`;return e.mimeType.startsWith("image/")?{type:"image_url",image_url:{url:t,detail:"auto"}}:{type:"input_file",file_data:t,filename:e.name??"attachment",media_type:e.mimeType}}export{T as GATEWAY_JSON_BODY_LIMIT_BYTES,u as GATEWAY_JSON_NEAR_LIMIT_RATIO,s as base64ByteLength,a as estimateGatewayMessageBytes,A as evaluateGatewayRequestBudget};
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/** Centralized defensive limits for untrusted local, extension, and protocol data. */
|
|
2
|
+
export declare const RESOURCE_LIMITS: {
|
|
3
|
+
readonly processTerminationGraceMs: 500;
|
|
4
|
+
readonly processTerminationTimeoutMs: 2000;
|
|
5
|
+
readonly configFileBytes: number;
|
|
6
|
+
readonly sessionIndexBytes: number;
|
|
7
|
+
readonly workspaceSettingsBytes: number;
|
|
8
|
+
readonly mcpConfigBytes: number;
|
|
9
|
+
readonly sessionBundleBytes: number;
|
|
10
|
+
readonly sessionJournalBytes: number;
|
|
11
|
+
readonly sessionEvents: 100000;
|
|
12
|
+
readonly sessionTranscriptEntries: 50000;
|
|
13
|
+
readonly sessionAttachments: 32;
|
|
14
|
+
readonly sessionAttachmentTotalBytes: number;
|
|
15
|
+
readonly sessionTextBytes: number;
|
|
16
|
+
readonly memoryJournalBytes: number;
|
|
17
|
+
readonly memoryIndexBytes: number;
|
|
18
|
+
readonly memoryBundleBytes: number;
|
|
19
|
+
readonly memoryRecords: 2000;
|
|
20
|
+
readonly memoryStatementBytes: number;
|
|
21
|
+
readonly memoryRationaleBytes: number;
|
|
22
|
+
readonly memoryTopics: 16;
|
|
23
|
+
readonly memoryTopicBytes: 256;
|
|
24
|
+
readonly memorySupersedes: 16;
|
|
25
|
+
readonly memoryEvidenceReferences: 32;
|
|
26
|
+
readonly memoryEvidenceReferenceBytes: 512;
|
|
27
|
+
readonly memoryContextRecords: 12;
|
|
28
|
+
readonly jsonlLineBytes: number;
|
|
29
|
+
/** Desktop protocol responses may carry bounded base64 speech payloads. */
|
|
30
|
+
readonly desktopJsonlLineBytes: number;
|
|
31
|
+
readonly desktopAttachmentChunkBytes: number;
|
|
32
|
+
readonly jsonlIdBytes: 256;
|
|
33
|
+
readonly jsonlPathBytes: 4096;
|
|
34
|
+
readonly jsonlPromptBytes: number;
|
|
35
|
+
readonly pendingAttachments: 16;
|
|
36
|
+
readonly pendingAttachmentTotalBytes: number;
|
|
37
|
+
readonly desktopAttachmentTtlMs: number;
|
|
38
|
+
readonly maxAttachmentBytes: number;
|
|
39
|
+
readonly clipboardTextBytes: number;
|
|
40
|
+
readonly clipboardTimeoutMs: 15000;
|
|
41
|
+
readonly instructionFileBytes: number;
|
|
42
|
+
readonly instructionTotalBytes: number;
|
|
43
|
+
readonly instructionFiles: 32;
|
|
44
|
+
readonly skillDocumentBytes: number;
|
|
45
|
+
readonly pluginManifestBytes: number;
|
|
46
|
+
readonly subagentTaskBytes: number;
|
|
47
|
+
readonly subagentContextBytes: number;
|
|
48
|
+
readonly subagentMaxWriteScopeItems: 32;
|
|
49
|
+
readonly subagentWriteScopeItemBytes: 512;
|
|
50
|
+
readonly subagentSummaryBytes: number;
|
|
51
|
+
readonly subagentMaxDurationMs: 1800000;
|
|
52
|
+
readonly subagentMaxTokens: 200000;
|
|
53
|
+
readonly subagentMaxConcurrent: 4;
|
|
54
|
+
readonly subagentMaxRetainedJobs: 32;
|
|
55
|
+
readonly desktopSessionStoreMaxEntries: 20;
|
|
56
|
+
readonly subagentMaxIterations: 200;
|
|
57
|
+
readonly subagentMaxToolCallsPerTurn: 100;
|
|
58
|
+
readonly agentMaxIterations: 500;
|
|
59
|
+
readonly agentMaxToolCallsPerTurn: 1;
|
|
60
|
+
readonly intentMaxCompletionAttempts: 2;
|
|
61
|
+
readonly subagentToolArgumentBytes: number;
|
|
62
|
+
readonly subagentToolResultBytes: number;
|
|
63
|
+
readonly goalObjectiveBytes: number;
|
|
64
|
+
readonly goalReasonBytes: number;
|
|
65
|
+
readonly goalEvidenceItems: 8;
|
|
66
|
+
readonly goalEvidenceBytes: number;
|
|
67
|
+
readonly goalDefaultMaxTurns: 100;
|
|
68
|
+
readonly goalMaximumMaxTurns: 10000;
|
|
69
|
+
readonly goalMaximumTokenBudget: 10000000;
|
|
70
|
+
readonly goalDefaultMaxDurationMs: number;
|
|
71
|
+
readonly goalMaximumMaxDurationMs: number;
|
|
72
|
+
readonly goalDefaultMaxEvaluatorRuns: 100;
|
|
73
|
+
readonly tuiTranscriptMessages: 2000;
|
|
74
|
+
readonly tuiAgentSessionMaxEntries: 4;
|
|
75
|
+
readonly tuiAgentSessionMaxBytes: number;
|
|
76
|
+
readonly agentPreparationCacheMaxEntries: 8;
|
|
77
|
+
readonly agentPreparationCacheMaxBytes: number;
|
|
78
|
+
readonly contextTokenCacheMaxEntries: 8;
|
|
79
|
+
readonly contextTokenCacheMaxBytes: number;
|
|
80
|
+
readonly jsonlMaxInFlight: 4;
|
|
81
|
+
readonly protocolWriteQueueEntries: 256;
|
|
82
|
+
readonly protocolWriteQueueBytes: number;
|
|
83
|
+
readonly workspaceReferenceCount: 32;
|
|
84
|
+
readonly workspaceReferenceInstructionBytes: number;
|
|
85
|
+
readonly logQueueEntries: 10000;
|
|
86
|
+
readonly logQueueBytes: number;
|
|
87
|
+
readonly internalProcessTimeoutMs: number;
|
|
88
|
+
readonly internalProcessOutputBytes: number;
|
|
89
|
+
readonly hostShellTimeoutMs: 120000;
|
|
90
|
+
readonly guestShellTimeoutMs: number;
|
|
91
|
+
readonly defaultShellTimeoutMs: 30000;
|
|
92
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=1e6,t={processTerminationGraceMs:500,processTerminationTimeoutMs:2e3,configFileBytes:262144,sessionIndexBytes:8388608,workspaceSettingsBytes:262144,mcpConfigBytes:524288,sessionBundleBytes:20971520,sessionJournalBytes:20971520,sessionEvents:1e5,sessionTranscriptEntries:5e4,sessionAttachments:32,sessionAttachmentTotalBytes:5e7,sessionTextBytes:524288,memoryJournalBytes:8388608,memoryIndexBytes:8388608,memoryBundleBytes:8388608,memoryRecords:2e3,memoryStatementBytes:4096,memoryRationaleBytes:2048,memoryTopics:16,memoryTopicBytes:256,memorySupersedes:16,memoryEvidenceReferences:32,memoryEvidenceReferenceBytes:512,memoryContextRecords:12,jsonlLineBytes:1048576,desktopJsonlLineBytes:4194304,desktopAttachmentChunkBytes:524288,jsonlIdBytes:256,jsonlPathBytes:4096,jsonlPromptBytes:524288,pendingAttachments:16,pendingAttachmentTotalBytes:5e7,desktopAttachmentTtlMs:9e5,maxAttachmentBytes:1e7,clipboardTextBytes:1e7,clipboardTimeoutMs:15e3,instructionFileBytes:131072,instructionTotalBytes:262144,instructionFiles:32,skillDocumentBytes:524288,pluginManifestBytes:262144,subagentTaskBytes:16384,subagentContextBytes:16384,subagentMaxWriteScopeItems:32,subagentWriteScopeItemBytes:512,subagentSummaryBytes:24576,subagentMaxDurationMs:18e5,subagentMaxTokens:2e5,subagentMaxConcurrent:4,subagentMaxRetainedJobs:32,desktopSessionStoreMaxEntries:20,subagentMaxIterations:200,subagentMaxToolCallsPerTurn:100,agentMaxIterations:500,agentMaxToolCallsPerTurn:1,intentMaxCompletionAttempts:2,subagentToolArgumentBytes:65536,subagentToolResultBytes:262144,goalObjectiveBytes:16384,goalReasonBytes:2048,goalEvidenceItems:8,goalEvidenceBytes:4096,goalDefaultMaxTurns:100,goalMaximumMaxTurns:1e4,goalMaximumTokenBudget:1e7,goalDefaultMaxDurationMs:72e5,goalMaximumMaxDurationMs:288e5,goalDefaultMaxEvaluatorRuns:100,tuiTranscriptMessages:2e3,tuiAgentSessionMaxEntries:4,tuiAgentSessionMaxBytes:8388608,agentPreparationCacheMaxEntries:8,agentPreparationCacheMaxBytes:16777216,contextTokenCacheMaxEntries:8,contextTokenCacheMaxBytes:8388608,jsonlMaxInFlight:4,protocolWriteQueueEntries:256,protocolWriteQueueBytes:16777216,workspaceReferenceCount:32,workspaceReferenceInstructionBytes:16384,logQueueEntries:1e4,logQueueBytes:4194304,internalProcessTimeoutMs:12e4,internalProcessOutputBytes:4194304,hostShellTimeoutMs:12e4,guestShellTimeoutMs:6e5,defaultShellTimeoutMs:3e4};export{t as RESOURCE_LIMITS};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export type AttachmentSource = 'clipboard' | 'file';
|
|
2
|
+
export interface Attachment {
|
|
3
|
+
id: string;
|
|
4
|
+
name: string;
|
|
5
|
+
mimeType: string;
|
|
6
|
+
sizeBytes: number;
|
|
7
|
+
source: AttachmentSource;
|
|
8
|
+
/** Optional requested filename for session-backed Desktop attachments. */
|
|
9
|
+
storageName?: string;
|
|
10
|
+
storagePath?: string;
|
|
11
|
+
}
|
|
12
|
+
export interface AttachmentPayload {
|
|
13
|
+
attachment: Attachment;
|
|
14
|
+
bytes: Uint8Array;
|
|
15
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { SessionEvent, SessionMetadata, TranscriptEntry } from './session.js';
|
|
2
|
+
/** Runtime validators for session data persisted in JSON files and journals. */
|
|
3
|
+
export declare function isSessionMetadata(value: unknown): value is SessionMetadata;
|
|
4
|
+
export declare function isSessionEvent(value: unknown): value is SessionEvent;
|
|
5
|
+
export declare function isTranscriptEntry(value: unknown): value is TranscriptEntry;
|
|
6
|
+
export declare function isRecord(value: unknown): value is Record<string, unknown>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function s(t){return n(t)?typeof t.id=="string"&&typeof t.projectFingerprint=="string"&&typeof t.cwd=="string"&&(typeof t.model=="string"||t.model===null)&&(typeof t.profile=="string"||t.profile===null)&&(t.status==="active"||t.status==="completed"||t.status==="failed"||t.status==="cancelled")&&typeof t.createdAt=="string"&&typeof t.updatedAt=="string"&&(t.name===void 0||typeof t.name=="string"):!1}function i(t){return n(t)?typeof t.type=="string"&&typeof t.timestamp=="string"&&typeof t.sessionId=="string"&&(t.runId===void 0||typeof t.runId=="string")&&(t.turnId===void 0||typeof t.turnId=="string")&&(t.data===void 0||n(t.data)):!1}function e(t){return!n(t)||typeof t.timestamp!="string"||typeof t.content!="string"||t.type!=="user"&&t.type!=="assistant"&&t.type!=="system"&&t.type!=="tool"?!1:(t.turnId===void 0||typeof t.turnId=="string")&&(t.attachmentIds===void 0||Array.isArray(t.attachmentIds)&&t.attachmentIds.every(r=>typeof r=="string"))}function n(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}export{n as isRecord,i as isSessionEvent,s as isSessionMetadata,e as isTranscriptEntry};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export type SessionStatus = 'active' | 'completed' | 'failed' | 'cancelled';
|
|
2
|
+
export interface SessionMetadata {
|
|
3
|
+
id: string;
|
|
4
|
+
name?: string;
|
|
5
|
+
projectFingerprint: string;
|
|
6
|
+
cwd: string;
|
|
7
|
+
model: string | null;
|
|
8
|
+
profile: string | null;
|
|
9
|
+
status: SessionStatus;
|
|
10
|
+
createdAt: string;
|
|
11
|
+
updatedAt: string;
|
|
12
|
+
}
|
|
13
|
+
export interface SessionEvent {
|
|
14
|
+
type: string;
|
|
15
|
+
timestamp: string;
|
|
16
|
+
sessionId: string;
|
|
17
|
+
runId?: string;
|
|
18
|
+
turnId?: string;
|
|
19
|
+
data?: Record<string, unknown>;
|
|
20
|
+
}
|
|
21
|
+
export interface TranscriptEntry {
|
|
22
|
+
type: 'user' | 'assistant' | 'system' | 'tool';
|
|
23
|
+
timestamp: string;
|
|
24
|
+
content: string;
|
|
25
|
+
turnId?: string;
|
|
26
|
+
attachmentIds?: readonly string[];
|
|
27
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type CliConfig } from '../config/config-schema.js';
|
|
2
|
+
import { type WorkspacePermissionPolicy } from '../workspace/workspace-settings.js';
|
|
3
|
+
export interface ValidatedSettingsDocument {
|
|
4
|
+
readonly config: Partial<CliConfig>;
|
|
5
|
+
readonly permissions?: WorkspacePermissionPolicy;
|
|
6
|
+
}
|
|
7
|
+
export declare function validateSettingsDocument(value: unknown): ValidatedSettingsDocument;
|
|
8
|
+
export declare function permissionsFromSettings(document: ValidatedSettingsDocument): WorkspacePermissionPolicy;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{CliError as m}from"../errors/cli-error.js";import{CLI_ERROR_CODES as f}from"../errors/error-codes.js";import{CONFIG_SCHEMA_VERSION as p,CONFIGURABLE_KEYS as t,validateConfig as d}from"../config/config-schema.js";import{DEFAULT_WORKSPACE_SETTINGS as S,validateWorkspaceSettings as g}from"../workspace/workspace-settings.js";import{findUnexpectedRecordKey as E,isRecord as a}from"../validation/record-schema.js";const u=["schemaVersion",...t,"permissions"];function R(i){if(!a(i))throw r("Settings must be a JSON object.");const e=E(i,u);if(e!==void 0)throw r(`Unsupported settings field: \`${e}\`.`);const n={};for(const s of["schemaVersion",...t])i[s]!==void 0&&(n[s]=i[s]);const o=d(n);if(i.permissions===void 0)return{config:o};const c=g({schemaVersion:i.schemaVersion??p,permissions:i.permissions});return{config:o,permissions:c.permissions}}function V(i){return i.permissions??S.permissions}function r(i){return new m(f.CONFIG_SCHEMA_INVALID,i,{category:"config",userMessage:`Invalid settings: ${i}`})}export{V as permissionsFromSettings,R as validateSettingsDocument};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/** Narrows JSON-shaped values before schema-specific validation. */
|
|
2
|
+
export declare function isRecord(value: unknown): value is Record<string, unknown>;
|
|
3
|
+
/** Returns the first unsupported own property in a configuration object. */
|
|
4
|
+
export declare function findUnexpectedRecordKey(value: Record<string, unknown>, allowedKeys: readonly string[]): string | undefined;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function o(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function c(e,n){const r=new Set(n);return Object.keys(e).find(t=>!r.has(t))}export{c as findUnexpectedRecordKey,o as isRecord};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare const WORKSPACE_SETTINGS_SCHEMA_VERSION = 1;
|
|
2
|
+
export declare const MAX_WORKSPACE_PERMISSION_RULE_LENGTH = 1024;
|
|
3
|
+
export interface WorkspacePermissionPolicy {
|
|
4
|
+
readonly allow: readonly string[];
|
|
5
|
+
readonly ask: readonly string[];
|
|
6
|
+
readonly deny: readonly string[];
|
|
7
|
+
}
|
|
8
|
+
export interface WorkspaceSettings {
|
|
9
|
+
readonly schemaVersion: 1;
|
|
10
|
+
readonly permissions: WorkspacePermissionPolicy;
|
|
11
|
+
}
|
|
12
|
+
export declare const DEFAULT_WORKSPACE_SETTINGS: WorkspaceSettings;
|
|
13
|
+
export declare function validateWorkspaceSettings(value: unknown): WorkspaceSettings;
|
|
14
|
+
export declare function normalizePermissionRule(value: unknown, field?: string): string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{CliError as a}from"../errors/cli-error.js";import{CLI_ERROR_CODES as d}from"../errors/error-codes.js";import{findUnexpectedRecordKey as f,isRecord as c}from"../validation/record-schema.js";const i=1,o=1024,w={schemaVersion:i,permissions:{allow:[],ask:[],deny:[]}};function g(s){if(!c(s))throw r("Workspace settings must be a JSON object.");if(m(s,["schemaVersion","permissions"],"workspace settings"),s.schemaVersion!==void 0&&s.schemaVersion!==i)throw r("Unsupported workspace settings schema version.");const e=s.permissions===void 0?w.permissions:S(s.permissions);return{schemaVersion:i,permissions:e}}function S(s){if(!c(s))throw r("Workspace permissions must be a JSON object.");return m(s,["allow","ask","deny"],"workspace permissions"),{allow:t(s.allow,"permissions.allow"),ask:t(s.ask,"permissions.ask"),deny:t(s.deny,"permissions.deny")}}function t(s,e){if(s===void 0)return[];if(!Array.isArray(s))throw r(`${e} must be an array of non-empty strings (max ${o} characters each).`);return[...new Set(s.map(n=>h(n,e)))]}function h(s,e="permission rule"){if(typeof s!="string"||s.trim().length===0||s.length>o)throw r(`${e} must be a non-empty string (max ${o} characters).`);return s.trim()}function r(s){return new a(d.CONFIG_SCHEMA_INVALID,s,{category:"config",userMessage:`Invalid workspace settings: ${s}`})}function m(s,e,n){const p=f(s,e);if(p!==void 0)throw r(`Unsupported ${n} field: \`${p}\`.`)}export{w as DEFAULT_WORKSPACE_SETTINGS,o as MAX_WORKSPACE_PERMISSION_RULE_LENGTH,i as WORKSPACE_SETTINGS_SCHEMA_VERSION,h as normalizePermissionRule,g as validateWorkspaceSettings};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { LotaGateAgent, type LotaGateAgentOptions, type ToolAuthorizationRule, type ToolAuthorizationEvent } from '@lotagate/agent-sdk';
|
|
2
|
+
import { type ToolExecutor } from '@lotagate/agent-sdk';
|
|
3
|
+
import type { LotaGate } from '@lotagate/sdk';
|
|
4
|
+
import type { ModelCallSummary } from '../../ports/model-diagnostics.js';
|
|
5
|
+
import type { HostPlatformContext } from '../platform/host-platform.js';
|
|
6
|
+
export interface AgentInstanceOptions extends Omit<LotaGateAgentOptions, 'modelClient'> {
|
|
7
|
+
client: LotaGate;
|
|
8
|
+
onModelComplete?: (summary: ModelCallSummary) => void;
|
|
9
|
+
}
|
|
10
|
+
export declare function createAgentInstance(options: AgentInstanceOptions): LotaGateAgent;
|
|
11
|
+
export interface LocalAgentInstanceOptions extends Omit<AgentInstanceOptions, 'toolExecutor'> {
|
|
12
|
+
platform?: HostPlatformContext;
|
|
13
|
+
toolExecutors?: readonly ToolExecutor[];
|
|
14
|
+
allowedTools?: readonly string[];
|
|
15
|
+
deniedTools?: readonly string[];
|
|
16
|
+
requireApproval?: boolean;
|
|
17
|
+
approvalHandler?: NonNullable<LotaGateAgentOptions['toolPolicy']>['approvalHandler'];
|
|
18
|
+
authorizationRules?: readonly ToolAuthorizationRule[];
|
|
19
|
+
authorizationObserver?: (event: ToolAuthorizationEvent) => void | Promise<void>;
|
|
20
|
+
onModelComplete?: (summary: ModelCallSummary) => void;
|
|
21
|
+
}
|
|
22
|
+
export declare function createLocalAgentInstance(options: LocalAgentInstanceOptions): LotaGateAgent;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{LotaGateAgent as f}from"@lotagate/agent-sdk";import{CompositeToolExecutor as m}from"@lotagate/agent-sdk";import{LocalFilesystemToolExecutor as s}from"../filesystem/local-filesystem-tool-executor.js";import{ShellToolExecutor as x}from"../shell/shell-tool-executor.js";import{createToolCallingModelClient as C}from"./tool-calling-model-client.js";function g(n){const{client:t,onModelComplete:e,...o}=n;return new f({...o,modelClient:C(t,e===void 0?{}:{onComplete:e})})}function v(n){const{toolExecutors:t,platform:e,allowedTools:o,deniedTools:l,requireApproval:r,approvalHandler:i,authorizationRules:d,authorizationObserver:a,onModelComplete:u,...c}=n,p=new m([...t??[new s,new x({...e===void 0?{}:{platform:e}})]]);return g({...c,...u===void 0?{}:{onModelComplete:u},toolExecutor:p,toolPolicy:{...o===void 0?{}:{allowedTools:o},...l===void 0?{}:{deniedTools:l},...r===void 0?{}:{requireApproval:r},...i===void 0?{}:{approvalHandler:i},...d===void 0?{}:{authorizationRules:d},...a===void 0?{}:{authorizationObserver:a}}})}export{g as createAgentInstance,v as createLocalAgentInstance};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function r(t){return typeof t=="string"?t.length:Array.isArray(t)?t.reduce((o,e)=>{if(typeof e!="object"||e===null||!("text"in e))return o;const n=e.text;return o+(typeof n=="string"?n.length:0)},0):0}function p(t){return{...typeof t.prompt_tokens=="number"?{promptTokens:t.prompt_tokens}:{},...typeof t.completion_tokens=="number"?{completionTokens:t.completion_tokens}:{},...typeof t.total_tokens=="number"?{totalTokens:t.total_tokens}:{}}}export{p as mapUsage,r as textLength};
|