indusagi-coding-agent 0.1.38 → 0.1.40
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/CHANGELOG.md +22 -7
- package/{LICENSE.md → LICENSE} +0 -1
- package/README.md +2 -4
- package/dist/cli/args.d.ts +6 -128
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +277 -472
- package/dist/cli/args.js.map +1 -1
- package/dist/cli/config-selector.d.ts +9 -62
- package/dist/cli/config-selector.d.ts.map +1 -1
- package/dist/cli/config-selector.js +31 -146
- package/dist/cli/config-selector.js.map +1 -1
- package/dist/cli/file-processor.d.ts +1 -69
- package/dist/cli/file-processor.d.ts.map +1 -1
- package/dist/cli/file-processor.js +36 -267
- package/dist/cli/file-processor.js.map +1 -1
- package/dist/cli/list-models.d.ts +0 -60
- package/dist/cli/list-models.d.ts.map +1 -1
- package/dist/cli/list-models.js +53 -246
- package/dist/cli/list-models.js.map +1 -1
- package/dist/cli/session-picker.d.ts +1 -72
- package/dist/cli/session-picker.d.ts.map +1 -1
- package/dist/cli/session-picker.js +57 -231
- package/dist/cli/session-picker.js.map +1 -1
- package/dist/cli.js +25 -31
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +0 -42
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +62 -97
- package/dist/config.js.map +1 -1
- package/dist/core/agent-session.d.ts +26 -2
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +78 -66
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/auth-storage.d.ts +4 -95
- package/dist/core/auth-storage.d.ts.map +1 -1
- package/dist/core/auth-storage.js +233 -288
- package/dist/core/auth-storage.js.map +1 -1
- package/dist/core/bash-executor.d.ts +0 -323
- package/dist/core/bash-executor.d.ts.map +1 -1
- package/dist/core/bash-executor.js +126 -359
- package/dist/core/bash-executor.js.map +1 -1
- package/dist/core/compaction/branch-summarization.d.ts +3 -3
- package/dist/core/compaction/branch-summarization.js +16 -16
- package/dist/core/compaction/branch-summarization.js.map +1 -1
- package/dist/core/compaction/compaction.d.ts +3 -3
- package/dist/core/compaction/compaction.js +40 -40
- package/dist/core/compaction/compaction.js.map +1 -1
- package/dist/core/compaction/index.d.ts +32 -4
- package/dist/core/compaction/index.d.ts.map +1 -1
- package/dist/core/compaction/index.js +30 -4
- package/dist/core/compaction/index.js.map +1 -1
- package/dist/core/compaction/utils.d.ts +1 -19
- package/dist/core/compaction/utils.d.ts.map +1 -1
- package/dist/core/compaction/utils.js +92 -113
- package/dist/core/compaction/utils.js.map +1 -1
- package/dist/core/discover-packages.d.ts +0 -4
- package/dist/core/discover-packages.d.ts.map +1 -1
- package/dist/core/discover-packages.js +41 -44
- package/dist/core/discover-packages.js.map +1 -1
- package/dist/core/event-bus.d.ts +1 -147
- package/dist/core/event-bus.d.ts.map +1 -1
- package/dist/core/event-bus.js +17 -106
- package/dist/core/event-bus.js.map +1 -1
- package/dist/core/exec.d.ts +0 -16
- package/dist/core/exec.d.ts.map +1 -1
- package/dist/core/exec.js +18 -27
- package/dist/core/exec.js.map +1 -1
- package/dist/core/export-html/ansi-to-html.ts +262 -0
- package/dist/core/export-html/index.ts +433 -0
- package/dist/core/export-html/template.html +48 -26
- package/dist/core/export-html/tool-renderer.d.ts +0 -21
- package/dist/core/export-html/tool-renderer.d.ts.map +1 -1
- package/dist/core/export-html/tool-renderer.js +35 -51
- package/dist/core/export-html/tool-renderer.js.map +1 -1
- package/dist/core/export-html/tool-renderer.ts +80 -0
- package/dist/core/export-html/vendor/highlight.min.js +401 -370
- package/dist/core/export-html/vendor/marked.min.js +71 -3
- package/dist/core/extensions/index.d.ts +7 -4
- package/dist/core/extensions/index.d.ts.map +1 -1
- package/dist/core/extensions/index.js +17 -3
- package/dist/core/extensions/index.js.map +1 -1
- package/dist/core/extensions/loader.d.ts +0 -6
- package/dist/core/extensions/loader.d.ts.map +1 -1
- package/dist/core/extensions/loader.js +60 -56
- package/dist/core/extensions/loader.js.map +1 -1
- package/dist/core/extensions/runner.d.ts +3 -0
- package/dist/core/extensions/runner.d.ts.map +1 -1
- package/dist/core/extensions/runner.js +48 -80
- package/dist/core/extensions/runner.js.map +1 -1
- package/dist/core/extensions/types.d.ts +50 -23
- package/dist/core/extensions/types.d.ts.map +1 -1
- package/dist/core/footer-data-provider.d.ts +2 -15
- package/dist/core/footer-data-provider.d.ts.map +1 -1
- package/dist/core/footer-data-provider.js +21 -33
- package/dist/core/footer-data-provider.js.map +1 -1
- package/dist/core/hooks/loader.js +2 -2
- package/dist/core/hooks/loader.js.map +1 -1
- package/dist/core/index.d.ts +29 -10
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +29 -10
- package/dist/core/index.js.map +1 -1
- package/dist/core/keybindings.d.ts +2 -179
- package/dist/core/keybindings.d.ts.map +1 -1
- package/dist/core/keybindings.js +64 -238
- package/dist/core/keybindings.js.map +1 -1
- package/dist/core/model-registry.d.ts +26 -181
- package/dist/core/model-registry.d.ts.map +1 -1
- package/dist/core/model-registry.js +228 -407
- package/dist/core/model-registry.js.map +1 -1
- package/dist/core/model-resolver.d.ts +0 -139
- package/dist/core/model-resolver.d.ts.map +1 -1
- package/dist/core/model-resolver.js +34 -215
- package/dist/core/model-resolver.js.map +1 -1
- package/dist/core/package-manager.d.ts +25 -57
- package/dist/core/package-manager.d.ts.map +1 -1
- package/dist/core/package-manager.js +326 -964
- package/dist/core/package-manager.js.map +1 -1
- package/dist/core/prompt-templates.d.ts +2 -34
- package/dist/core/prompt-templates.d.ts.map +1 -1
- package/dist/core/prompt-templates.js +122 -170
- package/dist/core/prompt-templates.js.map +1 -1
- package/dist/core/resource-loader.d.ts +19 -12
- package/dist/core/resource-loader.d.ts.map +1 -1
- package/dist/core/resource-loader.js +353 -467
- package/dist/core/resource-loader.js.map +1 -1
- package/dist/core/sdk.d.ts +2 -61
- package/dist/core/sdk.d.ts.map +1 -1
- package/dist/core/sdk.js +184 -252
- package/dist/core/sdk.js.map +1 -1
- package/dist/core/session-manager.d.ts +447 -1
- package/dist/core/session-manager.d.ts.map +1 -1
- package/dist/core/session-manager.js +1176 -1
- package/dist/core/session-manager.js.map +1 -1
- package/dist/core/settings-manager.d.ts +9 -12
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js +170 -398
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/core/skills.d.ts +2 -27
- package/dist/core/skills.d.ts.map +1 -1
- package/dist/core/skills.js +149 -212
- package/dist/core/skills.js.map +1 -1
- package/dist/core/subagents.d.ts +2 -2
- package/dist/core/subagents.d.ts.map +1 -1
- package/dist/core/subagents.js +21 -14
- package/dist/core/subagents.js.map +1 -1
- package/dist/core/system-prompt.d.ts +0 -11
- package/dist/core/system-prompt.d.ts.map +1 -1
- package/dist/core/system-prompt.js +168 -139
- package/dist/core/system-prompt.js.map +1 -1
- package/dist/core/timings.d.ts +1 -4
- package/dist/core/timings.d.ts.map +1 -1
- package/dist/core/timings.js +34 -18
- package/dist/core/timings.js.map +1 -1
- package/dist/core/todo-store.d.ts +20 -0
- package/dist/core/todo-store.d.ts.map +1 -0
- package/dist/core/todo-store.js +60 -0
- package/dist/core/todo-store.js.map +1 -0
- package/dist/core/tools/bash.d.ts +2 -0
- package/dist/core/tools/bash.d.ts.map +1 -0
- package/dist/core/tools/bash.js +2 -0
- package/dist/core/tools/bash.js.map +1 -0
- package/dist/core/tools/bg-process.d.ts +1 -6
- package/dist/core/tools/bg-process.d.ts.map +1 -1
- package/dist/core/tools/bg-process.js +4 -18
- package/dist/core/tools/bg-process.js.map +1 -1
- package/dist/core/tools/edit-diff.d.ts +9 -0
- package/dist/core/tools/edit-diff.d.ts.map +1 -0
- package/dist/core/tools/edit-diff.js +2 -0
- package/dist/core/tools/edit-diff.js.map +1 -0
- package/dist/core/tools/edit.d.ts +2 -0
- package/dist/core/tools/edit.d.ts.map +1 -0
- package/dist/core/tools/edit.js +2 -0
- package/dist/core/tools/edit.js.map +1 -0
- package/dist/core/tools/find.d.ts +2 -0
- package/dist/core/tools/find.d.ts.map +1 -0
- package/dist/core/tools/find.js +2 -0
- package/dist/core/tools/find.js.map +1 -0
- package/dist/core/tools/grep.d.ts +2 -0
- package/dist/core/tools/grep.d.ts.map +1 -0
- package/dist/core/tools/grep.js +2 -0
- package/dist/core/tools/grep.js.map +1 -0
- package/dist/core/tools/index.d.ts +8 -2
- package/dist/core/tools/index.d.ts.map +1 -1
- package/dist/core/tools/ls.d.ts +2 -0
- package/dist/core/tools/ls.d.ts.map +1 -0
- package/dist/core/tools/ls.js +2 -0
- package/dist/core/tools/ls.js.map +1 -0
- package/dist/core/tools/memory.d.ts +50 -1
- package/dist/core/tools/memory.d.ts.map +1 -1
- package/dist/core/tools/memory.js +11 -7
- package/dist/core/tools/memory.js.map +1 -1
- package/dist/core/tools/path-utils.d.ts +2 -0
- package/dist/core/tools/path-utils.d.ts.map +1 -0
- package/dist/core/tools/path-utils.js +2 -0
- package/dist/core/tools/path-utils.js.map +1 -0
- package/dist/core/tools/read.d.ts +2 -0
- package/dist/core/tools/read.d.ts.map +1 -0
- package/dist/core/tools/read.js +2 -0
- package/dist/core/tools/read.js.map +1 -0
- package/dist/core/tools/registry.d.ts +0 -15
- package/dist/core/tools/registry.d.ts.map +1 -1
- package/dist/core/tools/registry.js +13 -37
- package/dist/core/tools/registry.js.map +1 -1
- package/dist/core/tools/task.d.ts +17 -23
- package/dist/core/tools/task.d.ts.map +1 -1
- package/dist/core/tools/task.js +43 -82
- package/dist/core/tools/task.js.map +1 -1
- package/dist/core/tools/todo.d.ts +17 -20
- package/dist/core/tools/todo.d.ts.map +1 -1
- package/dist/core/tools/todo.js +79 -58
- package/dist/core/tools/todo.js.map +1 -1
- package/dist/core/tools/truncate.d.ts +2 -0
- package/dist/core/tools/truncate.d.ts.map +1 -0
- package/dist/core/tools/truncate.js +2 -0
- package/dist/core/tools/truncate.js.map +1 -0
- package/dist/core/tools/webfetch.d.ts +2 -0
- package/dist/core/tools/webfetch.d.ts.map +1 -0
- package/dist/core/tools/webfetch.js +2 -0
- package/dist/core/tools/webfetch.js.map +1 -0
- package/dist/core/tools/websearch.d.ts +2 -0
- package/dist/core/tools/websearch.d.ts.map +1 -0
- package/dist/core/tools/websearch.js +2 -0
- package/dist/core/tools/websearch.js.map +1 -0
- package/dist/core/tools/write.d.ts +2 -0
- package/dist/core/tools/write.d.ts.map +1 -0
- package/dist/core/tools/write.js +2 -0
- package/dist/core/tools/write.js.map +1 -0
- package/dist/index.d.ts +35 -29
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +33 -41
- package/dist/index.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +237 -225
- package/dist/main.js.map +1 -1
- package/dist/migrations.d.ts +0 -25
- package/dist/migrations.d.ts.map +1 -1
- package/dist/migrations.js +129 -180
- package/dist/migrations.js.map +1 -1
- package/dist/modes/index.d.ts +13 -6
- package/dist/modes/index.d.ts.map +1 -1
- package/dist/modes/index.js +11 -5
- package/dist/modes/index.js.map +1 -1
- package/dist/modes/interactive/components/armin.d.ts +8 -23
- package/dist/modes/interactive/components/armin.d.ts.map +1 -1
- package/dist/modes/interactive/components/armin.js +217 -266
- package/dist/modes/interactive/components/armin.js.map +1 -1
- package/dist/modes/interactive/components/assistant-message.d.ts +2 -168
- package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/assistant-message.js +61 -216
- package/dist/modes/interactive/components/assistant-message.js.map +1 -1
- package/dist/modes/interactive/components/bash-execution.d.ts +6 -313
- package/dist/modes/interactive/components/bash-execution.d.ts.map +1 -1
- package/dist/modes/interactive/components/bash-execution.js +86 -403
- package/dist/modes/interactive/components/bash-execution.js.map +1 -1
- package/dist/modes/interactive/components/bordered-loader.d.ts +1 -3
- package/dist/modes/interactive/components/bordered-loader.d.ts.map +1 -1
- package/dist/modes/interactive/components/bordered-loader.js +59 -29
- package/dist/modes/interactive/components/bordered-loader.js.map +1 -1
- package/dist/modes/interactive/components/branch-summary-message.d.ts +3 -3
- package/dist/modes/interactive/components/branch-summary-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/branch-summary-message.js +30 -17
- package/dist/modes/interactive/components/branch-summary-message.js.map +1 -1
- package/dist/modes/interactive/components/compaction-summary-message.d.ts +3 -3
- package/dist/modes/interactive/components/compaction-summary-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/compaction-summary-message.js +35 -18
- package/dist/modes/interactive/components/compaction-summary-message.js.map +1 -1
- package/dist/modes/interactive/components/config-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/config-selector.js +60 -68
- package/dist/modes/interactive/components/config-selector.js.map +1 -1
- package/dist/modes/interactive/components/countdown-timer.d.ts +2 -6
- package/dist/modes/interactive/components/countdown-timer.d.ts.map +1 -1
- package/dist/modes/interactive/components/countdown-timer.js +32 -18
- package/dist/modes/interactive/components/countdown-timer.js.map +1 -1
- package/dist/modes/interactive/components/custom-editor.d.ts +1 -5
- package/dist/modes/interactive/components/custom-editor.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-editor.js +45 -37
- package/dist/modes/interactive/components/custom-editor.js.map +1 -1
- package/dist/modes/interactive/components/custom-message.d.ts +5 -6
- package/dist/modes/interactive/components/custom-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-message.js +43 -53
- package/dist/modes/interactive/components/custom-message.js.map +1 -1
- package/dist/modes/interactive/components/diff.d.ts +0 -3
- package/dist/modes/interactive/components/diff.d.ts.map +1 -1
- package/dist/modes/interactive/components/diff.js +101 -108
- package/dist/modes/interactive/components/diff.js.map +1 -1
- package/dist/modes/interactive/components/dynamic-border.d.ts +7 -2
- package/dist/modes/interactive/components/dynamic-border.d.ts.map +1 -1
- package/dist/modes/interactive/components/dynamic-border.js +24 -4
- package/dist/modes/interactive/components/dynamic-border.js.map +1 -1
- package/dist/modes/interactive/components/extension-editor.d.ts +5 -9
- package/dist/modes/interactive/components/extension-editor.d.ts.map +1 -1
- package/dist/modes/interactive/components/extension-editor.js +43 -46
- package/dist/modes/interactive/components/extension-editor.js.map +1 -1
- package/dist/modes/interactive/components/extension-input.d.ts +4 -9
- package/dist/modes/interactive/components/extension-input.d.ts.map +1 -1
- package/dist/modes/interactive/components/extension-input.js +45 -28
- package/dist/modes/interactive/components/extension-input.js.map +1 -1
- package/dist/modes/interactive/components/extension-selector.d.ts +7 -12
- package/dist/modes/interactive/components/extension-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/extension-selector.js +54 -32
- package/dist/modes/interactive/components/extension-selector.js.map +1 -1
- package/dist/modes/interactive/components/footer.d.ts +2 -11
- package/dist/modes/interactive/components/footer.d.ts.map +1 -1
- package/dist/modes/interactive/components/footer.js +135 -183
- package/dist/modes/interactive/components/footer.js.map +1 -1
- package/dist/modes/interactive/components/index.d.ts +79 -30
- package/dist/modes/interactive/components/index.d.ts.map +1 -1
- package/dist/modes/interactive/components/index.js +73 -31
- package/dist/modes/interactive/components/index.js.map +1 -1
- package/dist/modes/interactive/components/keybinding-hints.d.ts +0 -18
- package/dist/modes/interactive/components/keybinding-hints.d.ts.map +1 -1
- package/dist/modes/interactive/components/keybinding-hints.js +24 -31
- package/dist/modes/interactive/components/keybinding-hints.js.map +1 -1
- package/dist/modes/interactive/components/login-dialog.d.ts +11 -24
- package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
- package/dist/modes/interactive/components/login-dialog.js +89 -86
- package/dist/modes/interactive/components/login-dialog.js.map +1 -1
- package/dist/modes/interactive/components/model-selector.d.ts +15 -19
- package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/model-selector.js +104 -157
- package/dist/modes/interactive/components/model-selector.js.map +1 -1
- package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/oauth-selector.js +5 -5
- package/dist/modes/interactive/components/oauth-selector.js.map +1 -1
- package/dist/modes/interactive/components/scoped-models-selector.d.ts +12 -22
- package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/scoped-models-selector.js +111 -132
- package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
- package/dist/modes/interactive/components/session-selector-search.d.ts +3 -3
- package/dist/modes/interactive/components/session-selector-search.d.ts.map +1 -1
- package/dist/modes/interactive/components/session-selector-search.js +92 -103
- package/dist/modes/interactive/components/session-selector-search.js.map +1 -1
- package/dist/modes/interactive/components/session-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/session-selector.js +28 -39
- package/dist/modes/interactive/components/session-selector.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector.d.ts +1 -1
- package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector.js +111 -203
- package/dist/modes/interactive/components/settings-selector.js.map +1 -1
- package/dist/modes/interactive/components/show-images-selector.d.ts +1 -1
- package/dist/modes/interactive/components/show-images-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/show-images-selector.js +17 -19
- package/dist/modes/interactive/components/show-images-selector.js.map +1 -1
- package/dist/modes/interactive/components/skill-invocation-message.d.ts +3 -3
- package/dist/modes/interactive/components/skill-invocation-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/skill-invocation-message.js +29 -19
- package/dist/modes/interactive/components/skill-invocation-message.js.map +1 -1
- package/dist/modes/interactive/components/theme-selector.d.ts +2 -2
- package/dist/modes/interactive/components/theme-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/theme-selector.js +20 -25
- package/dist/modes/interactive/components/theme-selector.js.map +1 -1
- package/dist/modes/interactive/components/thinking-selector.d.ts +1 -1
- package/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/thinking-selector.js +19 -20
- package/dist/modes/interactive/components/thinking-selector.js.map +1 -1
- package/dist/modes/interactive/components/tool-execution.d.ts +12 -10
- package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
- package/dist/modes/interactive/components/tool-execution.js +14 -8
- package/dist/modes/interactive/components/tool-execution.js.map +1 -1
- package/dist/modes/interactive/components/tree-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/tree-selector.js +53 -60
- package/dist/modes/interactive/components/tree-selector.js.map +1 -1
- package/dist/modes/interactive/components/user-message-selector.d.ts +3 -9
- package/dist/modes/interactive/components/user-message-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/user-message-selector.js +57 -68
- package/dist/modes/interactive/components/user-message-selector.js.map +1 -1
- package/dist/modes/interactive/components/visual-truncate.d.ts +0 -12
- package/dist/modes/interactive/components/visual-truncate.d.ts.map +1 -1
- package/dist/modes/interactive/components/visual-truncate.js +14 -22
- package/dist/modes/interactive/components/visual-truncate.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts +6 -0
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +118 -113
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme.js +189 -39
- package/dist/modes/interactive/theme/theme.js.map +1 -1
- package/dist/modes/rpc/rpc-client.d.ts +8 -1
- package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-client.js +88 -59
- package/dist/modes/rpc/rpc-client.js.map +1 -1
- package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-mode.js +24 -46
- package/dist/modes/rpc/rpc-mode.js.map +1 -1
- package/dist/modes/rpc/rpc-types.d.ts +75 -409
- package/dist/modes/rpc/rpc-types.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-types.js +21 -360
- package/dist/modes/rpc/rpc-types.js.map +1 -1
- package/dist/observability/core/config.d.ts +28 -0
- package/dist/observability/core/config.d.ts.map +1 -0
- package/dist/observability/core/config.js +150 -0
- package/dist/observability/core/config.js.map +1 -0
- package/dist/observability/core/event-bus.d.ts +15 -0
- package/dist/observability/core/event-bus.d.ts.map +1 -0
- package/dist/observability/core/event-bus.js +37 -0
- package/dist/observability/core/event-bus.js.map +1 -0
- package/dist/observability/core/index.d.ts +12 -0
- package/dist/observability/core/index.d.ts.map +1 -0
- package/dist/observability/core/index.js +14 -0
- package/dist/observability/core/index.js.map +1 -0
- package/dist/observability/core/observability.d.ts +63 -0
- package/dist/observability/core/observability.d.ts.map +1 -0
- package/dist/observability/core/observability.js +127 -0
- package/dist/observability/core/observability.js.map +1 -0
- package/dist/observability/core/span.d.ts +37 -0
- package/dist/observability/core/span.d.ts.map +1 -0
- package/dist/observability/core/span.js +90 -0
- package/dist/observability/core/span.js.map +1 -0
- package/dist/observability/core/tracer.d.ts +22 -0
- package/dist/observability/core/tracer.d.ts.map +1 -0
- package/dist/observability/core/tracer.js +79 -0
- package/dist/observability/core/tracer.js.map +1 -0
- package/dist/observability/core/types.d.ts +155 -0
- package/dist/observability/core/types.d.ts.map +1 -0
- package/dist/observability/core/types.js +38 -0
- package/dist/observability/core/types.js.map +1 -0
- package/dist/observability/exporters/base-exporter.d.ts +16 -0
- package/dist/observability/exporters/base-exporter.d.ts.map +1 -0
- package/dist/observability/exporters/base-exporter.js +26 -0
- package/dist/observability/exporters/base-exporter.js.map +1 -0
- package/dist/observability/exporters/console-exporter.d.ts +22 -0
- package/dist/observability/exporters/console-exporter.d.ts.map +1 -0
- package/dist/observability/exporters/console-exporter.js +80 -0
- package/dist/observability/exporters/console-exporter.js.map +1 -0
- package/dist/observability/exporters/file-exporter.d.ts +31 -0
- package/dist/observability/exporters/file-exporter.d.ts.map +1 -0
- package/dist/observability/exporters/file-exporter.js +120 -0
- package/dist/observability/exporters/file-exporter.js.map +1 -0
- package/dist/observability/exporters/index.d.ts +12 -0
- package/dist/observability/exporters/index.d.ts.map +1 -0
- package/dist/observability/exporters/index.js +11 -0
- package/dist/observability/exporters/index.js.map +1 -0
- package/dist/observability/exporters/langfuse-exporter.d.ts +27 -0
- package/dist/observability/exporters/langfuse-exporter.d.ts.map +1 -0
- package/dist/observability/exporters/langfuse-exporter.js +146 -0
- package/dist/observability/exporters/langfuse-exporter.js.map +1 -0
- package/dist/observability/exporters/sentry-exporter.d.ts +22 -0
- package/dist/observability/exporters/sentry-exporter.d.ts.map +1 -0
- package/dist/observability/exporters/sentry-exporter.js +121 -0
- package/dist/observability/exporters/sentry-exporter.js.map +1 -0
- package/dist/observability/index.d.ts +3 -0
- package/dist/observability/index.d.ts.map +1 -0
- package/dist/observability/index.js +3 -0
- package/dist/observability/index.js.map +1 -0
- package/dist/utils/changelog.d.ts +1 -2
- package/dist/utils/changelog.d.ts.map +1 -1
- package/dist/utils/changelog.js +53 -61
- package/dist/utils/changelog.js.map +1 -1
- package/dist/utils/clipboard-image.d.ts.map +1 -1
- package/dist/utils/clipboard-image.js +77 -83
- package/dist/utils/clipboard-image.js.map +1 -1
- package/dist/utils/clipboard.d.ts.map +1 -1
- package/dist/utils/clipboard.js +62 -49
- package/dist/utils/clipboard.js.map +1 -1
- package/dist/utils/image-convert.d.ts +6 -6
- package/dist/utils/image-convert.d.ts.map +1 -1
- package/dist/utils/image-convert.js +29 -23
- package/dist/utils/image-convert.js.map +1 -1
- package/dist/utils/image-resize.d.ts +0 -17
- package/dist/utils/image-resize.d.ts.map +1 -1
- package/dist/utils/image-resize.js +100 -138
- package/dist/utils/image-resize.js.map +1 -1
- package/dist/utils/mime.d.ts +1 -0
- package/dist/utils/mime.d.ts.map +1 -1
- package/dist/utils/mime.js +35 -15
- package/dist/utils/mime.js.map +1 -1
- package/dist/utils/photon.d.ts +4 -15
- package/dist/utils/photon.d.ts.map +1 -1
- package/dist/utils/photon.js +71 -60
- package/dist/utils/photon.js.map +1 -1
- package/dist/utils/shell.d.ts +4 -21
- package/dist/utils/shell.d.ts.map +1 -1
- package/dist/utils/shell.js +101 -124
- package/dist/utils/shell.js.map +1 -1
- package/dist/utils/sleep.d.ts +1 -1
- package/dist/utils/sleep.d.ts.map +1 -1
- package/dist/utils/sleep.js +32 -8
- package/dist/utils/sleep.js.map +1 -1
- package/dist/utils/tools-manager.d.ts +4 -2
- package/dist/utils/tools-manager.d.ts.map +1 -1
- package/dist/utils/tools-manager.js +96 -122
- package/dist/utils/tools-manager.js.map +1 -1
- package/docs/PI_MONO_MIT_REMOVAL_GUIDE.md +2132 -0
- package/docs/SAME_TO_SAME_PARITY_REPORT.md +312 -0
- package/examples/README.md +12 -0
- package/package.json +62 -88
- package/dist/modes/interactive/theme/dark.json +0 -85
- package/dist/modes/interactive/theme/light.json +0 -84
- package/dist/modes/interactive/theme/theme-schema.json +0 -335
- package/docs/FEATURES.md +0 -306
- package/docs/MCP.md +0 -341
- package/docs/MEMORY.md +0 -443
- package/examples/mcp-servers.example.json +0 -50
package/dist/core/sdk.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { join } from "node:path";
|
|
2
1
|
import { existsSync } from "node:fs";
|
|
2
|
+
import { join } from "node:path";
|
|
3
3
|
import { Agent } from "indusagi/agent";
|
|
4
4
|
import { streamSimple } from "indusagi/ai";
|
|
5
5
|
import { getAgentDir, getDocsPath, getMCPConfigPath } from "../config.js";
|
|
@@ -12,95 +12,61 @@ import { DefaultResourceLoader } from "./resource-loader.js";
|
|
|
12
12
|
import { SessionManager } from "./session-manager.js";
|
|
13
13
|
import { SettingsManager } from "./settings-manager.js";
|
|
14
14
|
import { time } from "./timings.js";
|
|
15
|
-
import { allTools, bashTool, codingTools, createBashTool, createCodingTools, createEditTool, createFindTool, createGrepTool, createLsTool, createReadOnlyTools, createReadTool, createTaskTool, createTodoReadTool, createTodoWriteTool, createWriteTool, editTool, findTool, grepTool, lsTool, readOnlyTools, readTool, taskTool, todoReadTool, todoWriteTool, writeTool,
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
createMemoryTools, createMemory, DEFAULT_WORKING_MEMORY_TEMPLATE, } from "./tools/index.js";
|
|
20
|
-
export {
|
|
21
|
-
// Pre-built tools (use process.cwd())
|
|
22
|
-
readTool, bashTool, editTool, writeTool, grepTool, findTool, lsTool, taskTool, todoReadTool, todoWriteTool, codingTools, readOnlyTools, allTools as allBuiltInTools,
|
|
23
|
-
// Tool factories (for custom cwd)
|
|
24
|
-
createCodingTools, createReadOnlyTools, createReadTool, createBashTool, createEditTool, createWriteTool, createGrepTool, createFindTool, createLsTool, createTaskTool, createTodoReadTool, createTodoWriteTool, };
|
|
25
|
-
// Helper Functions
|
|
26
|
-
function getDefaultAgentDir() {
|
|
27
|
-
return getAgentDir();
|
|
15
|
+
import { allTools, bashTool, codingTools, createBashTool, createCodingTools, createEditTool, createFindTool, createGrepTool, createLsTool, createMCPTools, createMemory, createMemoryTools, createReadOnlyTools, createReadTool, createTaskTool, createTodoReadTool, createTodoWriteTool, createWriteTool, DEFAULT_WORKING_MEMORY_TEMPLATE, editTool, findTool, grepTool, lsTool, readOnlyTools, readTool, taskTool, todoReadTool, todoWriteTool, writeTool, } from "./tools/index.js";
|
|
16
|
+
export { readTool, bashTool, editTool, writeTool, grepTool, findTool, lsTool, taskTool, todoReadTool, todoWriteTool, codingTools, readOnlyTools, allTools as allBuiltInTools, createCodingTools, createReadOnlyTools, createReadTool, createBashTool, createEditTool, createWriteTool, createGrepTool, createFindTool, createLsTool, createTaskTool, createTodoReadTool, createTodoWriteTool, };
|
|
17
|
+
function createDefaultAuthStorage(agentDir, provided) {
|
|
18
|
+
return provided ?? new AuthStorage(join(agentDir, "auth.json"));
|
|
28
19
|
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
* thinkingLevel: 'high',
|
|
42
|
-
* });
|
|
43
|
-
*
|
|
44
|
-
* // Continue previous session
|
|
45
|
-
* const { session, modelFallbackMessage } = await createAgentSession({
|
|
46
|
-
* continueSession: true,
|
|
47
|
-
* });
|
|
48
|
-
*
|
|
49
|
-
* // Full control
|
|
50
|
-
* const loader = new DefaultResourceLoader({
|
|
51
|
-
* cwd: process.cwd(),
|
|
52
|
-
* agentDir: getAgentDir(),
|
|
53
|
-
* settingsManager: SettingsManager.create(),
|
|
54
|
-
* });
|
|
55
|
-
* await loader.reload();
|
|
56
|
-
* const { session } = await createAgentSession({
|
|
57
|
-
* model: myModel,
|
|
58
|
-
* tools: [readTool, bashTool],
|
|
59
|
-
* resourceLoader: loader,
|
|
60
|
-
* sessionManager: SessionManager.inMemory(),
|
|
61
|
-
* });
|
|
62
|
-
* ```
|
|
63
|
-
*/
|
|
64
|
-
export async function createAgentSession(options = {}) {
|
|
65
|
-
const cwd = options.cwd ?? process.cwd();
|
|
66
|
-
const agentDir = options.agentDir ?? getDefaultAgentDir();
|
|
67
|
-
let resourceLoader = options.resourceLoader;
|
|
68
|
-
// Use provided or create AuthStorage and ModelRegistry
|
|
69
|
-
const authPath = options.agentDir ? join(agentDir, "auth.json") : undefined;
|
|
70
|
-
const modelsPath = options.agentDir ? join(agentDir, "models.json") : undefined;
|
|
71
|
-
const authStorage = options.authStorage ?? new AuthStorage(authPath);
|
|
72
|
-
const modelRegistry = options.modelRegistry ?? new ModelRegistry(authStorage, modelsPath);
|
|
73
|
-
const settingsManager = options.settingsManager ?? SettingsManager.create(cwd, agentDir);
|
|
74
|
-
const sessionManager = options.sessionManager ?? SessionManager.create(cwd);
|
|
75
|
-
if (!resourceLoader) {
|
|
76
|
-
resourceLoader = new DefaultResourceLoader({ cwd, agentDir, settingsManager });
|
|
77
|
-
await resourceLoader.reload();
|
|
78
|
-
time("resourceLoader.reload");
|
|
20
|
+
function createDefaultRegistry(agentDir, authStorage, provided) {
|
|
21
|
+
return provided ?? new ModelRegistry(authStorage, join(agentDir, "models.json"));
|
|
22
|
+
}
|
|
23
|
+
function createDefaultSettingsManager(cwd, agentDir, provided) {
|
|
24
|
+
return provided ?? SettingsManager.create(cwd, agentDir);
|
|
25
|
+
}
|
|
26
|
+
function createDefaultSessionManager(cwd, provided) {
|
|
27
|
+
return provided ?? SessionManager.create(cwd);
|
|
28
|
+
}
|
|
29
|
+
async function createDefaultResourceLoader(cwd, agentDir, settingsManager, provided) {
|
|
30
|
+
if (provided) {
|
|
31
|
+
return provided;
|
|
79
32
|
}
|
|
80
|
-
|
|
81
|
-
|
|
33
|
+
const loader = new DefaultResourceLoader({ cwd, agentDir, settingsManager });
|
|
34
|
+
await loader.reload();
|
|
35
|
+
time("resourceLoader.reload");
|
|
36
|
+
return loader;
|
|
37
|
+
}
|
|
38
|
+
async function bootstrapSessionDependencies(options) {
|
|
39
|
+
const cwd = options.cwd ?? process.cwd();
|
|
40
|
+
const agentDir = options.agentDir ?? getAgentDir();
|
|
41
|
+
const authStorage = createDefaultAuthStorage(agentDir, options.authStorage);
|
|
42
|
+
const modelRegistry = createDefaultRegistry(agentDir, authStorage, options.modelRegistry);
|
|
43
|
+
const settingsManager = createDefaultSettingsManager(cwd, agentDir, options.settingsManager);
|
|
44
|
+
const sessionManager = createDefaultSessionManager(cwd, options.sessionManager);
|
|
45
|
+
const resourceLoader = await createDefaultResourceLoader(cwd, agentDir, settingsManager, options.resourceLoader);
|
|
46
|
+
return { cwd, agentDir, authStorage, modelRegistry, settingsManager, sessionManager, resourceLoader };
|
|
47
|
+
}
|
|
48
|
+
async function resolveInitialModel(options, bootstrap) {
|
|
49
|
+
const existingSession = bootstrap.sessionManager.buildSessionContext();
|
|
82
50
|
const hasExistingSession = existingSession.messages.length > 0;
|
|
83
51
|
let model = options.model;
|
|
84
52
|
let modelFallbackMessage;
|
|
85
|
-
// If session has data, try to restore model from it
|
|
86
53
|
if (!model && hasExistingSession && existingSession.model) {
|
|
87
|
-
const restoredModel = modelRegistry.find(existingSession.model.provider, existingSession.model.modelId);
|
|
88
|
-
if (restoredModel && (await modelRegistry.getApiKey(restoredModel))) {
|
|
54
|
+
const restoredModel = bootstrap.modelRegistry.find(existingSession.model.provider, existingSession.model.modelId);
|
|
55
|
+
if (restoredModel && (await bootstrap.modelRegistry.getApiKey(restoredModel))) {
|
|
89
56
|
model = restoredModel;
|
|
90
57
|
}
|
|
91
|
-
|
|
58
|
+
else {
|
|
92
59
|
modelFallbackMessage = `Could not restore model ${existingSession.model.provider}/${existingSession.model.modelId}`;
|
|
93
60
|
}
|
|
94
61
|
}
|
|
95
|
-
// If still no model, use findInitialModel (checks settings default, then provider defaults)
|
|
96
62
|
if (!model) {
|
|
97
63
|
const result = await findInitialModel({
|
|
98
64
|
scopedModels: [],
|
|
99
65
|
isContinuing: hasExistingSession,
|
|
100
|
-
defaultProvider: settingsManager.getDefaultProvider(),
|
|
101
|
-
defaultModelId: settingsManager.getDefaultModel(),
|
|
102
|
-
defaultThinkingLevel: settingsManager.getDefaultThinkingLevel(),
|
|
103
|
-
modelRegistry,
|
|
66
|
+
defaultProvider: bootstrap.settingsManager.getDefaultProvider(),
|
|
67
|
+
defaultModelId: bootstrap.settingsManager.getDefaultModel(),
|
|
68
|
+
defaultThinkingLevel: bootstrap.settingsManager.getDefaultThinkingLevel(),
|
|
69
|
+
modelRegistry: bootstrap.modelRegistry,
|
|
104
70
|
});
|
|
105
71
|
model = result.model;
|
|
106
72
|
if (!model) {
|
|
@@ -111,66 +77,50 @@ export async function createAgentSession(options = {}) {
|
|
|
111
77
|
}
|
|
112
78
|
}
|
|
113
79
|
let thinkingLevel = options.thinkingLevel;
|
|
114
|
-
// If session has data, restore thinking level from it
|
|
115
80
|
if (thinkingLevel === undefined && hasExistingSession) {
|
|
116
81
|
thinkingLevel = existingSession.thinkingLevel;
|
|
117
82
|
}
|
|
118
|
-
// Fall back to settings default
|
|
119
83
|
if (thinkingLevel === undefined) {
|
|
120
|
-
thinkingLevel = settingsManager.getDefaultThinkingLevel() ?? "off";
|
|
84
|
+
thinkingLevel = bootstrap.settingsManager.getDefaultThinkingLevel() ?? "off";
|
|
121
85
|
}
|
|
122
|
-
// Clamp to model capabilities
|
|
123
86
|
if (!model || !model.reasoning) {
|
|
124
87
|
thinkingLevel = "off";
|
|
125
88
|
}
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
];
|
|
137
|
-
const initialActiveToolNames = options.tools
|
|
138
|
-
? options.tools.map((t) => t.name).filter((n) => n in allTools)
|
|
139
|
-
: defaultActiveToolNames;
|
|
140
|
-
let agent;
|
|
141
|
-
// Create convertToLlm wrapper that filters images if blockImages is enabled (defense-in-depth)
|
|
142
|
-
const convertToLlmWithBlockImages = (messages) => {
|
|
89
|
+
if (!hasExistingSession) {
|
|
90
|
+
if (model) {
|
|
91
|
+
bootstrap.sessionManager.appendModelChange(model.provider, model.id);
|
|
92
|
+
}
|
|
93
|
+
bootstrap.sessionManager.appendThinkingLevelChange(thinkingLevel);
|
|
94
|
+
}
|
|
95
|
+
return { model, thinkingLevel, modelFallbackMessage };
|
|
96
|
+
}
|
|
97
|
+
function createConvertToLlm(settingsManager) {
|
|
98
|
+
return (messages) => {
|
|
143
99
|
const converted = convertToLlm(messages);
|
|
144
|
-
// Check setting dynamically so mid-session changes take effect
|
|
145
100
|
if (!settingsManager.getBlockImages()) {
|
|
146
101
|
return converted;
|
|
147
102
|
}
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
const content = msg.content;
|
|
152
|
-
if (Array.isArray(content)) {
|
|
153
|
-
const hasImages = content.some((c) => c.type === "image");
|
|
154
|
-
if (hasImages) {
|
|
155
|
-
const filteredContent = content
|
|
156
|
-
.map((c) => c.type === "image" ? { type: "text", text: "Image reading is disabled." } : c)
|
|
157
|
-
.filter((c, i, arr) =>
|
|
158
|
-
// Dedupe consecutive "Image reading is disabled." texts
|
|
159
|
-
!(c.type === "text" &&
|
|
160
|
-
c.text === "Image reading is disabled." &&
|
|
161
|
-
i > 0 &&
|
|
162
|
-
arr[i - 1].type === "text" &&
|
|
163
|
-
arr[i - 1].text === "Image reading is disabled."));
|
|
164
|
-
return { ...msg, content: filteredContent };
|
|
165
|
-
}
|
|
166
|
-
}
|
|
103
|
+
return converted.map((message) => {
|
|
104
|
+
if (message.role !== "user" && message.role !== "toolResult") {
|
|
105
|
+
return message;
|
|
167
106
|
}
|
|
168
|
-
|
|
107
|
+
if (!Array.isArray(message.content)) {
|
|
108
|
+
return message;
|
|
109
|
+
}
|
|
110
|
+
const content = message.content
|
|
111
|
+
.map((block) => (block.type === "image" ? { type: "text", text: "Image reading is disabled." } : block))
|
|
112
|
+
.filter((block, index, blocks) => {
|
|
113
|
+
if (block.type !== "text" || block.text !== "Image reading is disabled." || index === 0)
|
|
114
|
+
return true;
|
|
115
|
+
const previous = blocks[index - 1];
|
|
116
|
+
return previous.type !== "text" || previous.text !== "Image reading is disabled.";
|
|
117
|
+
});
|
|
118
|
+
return { ...message, content };
|
|
169
119
|
});
|
|
170
120
|
};
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
121
|
+
}
|
|
122
|
+
function createStreamWithHooks(sessionManager, hookRunnerRef) {
|
|
123
|
+
return async (model, context, options) => {
|
|
174
124
|
const hookRunner = hookRunnerRef.current;
|
|
175
125
|
if (!hookRunner) {
|
|
176
126
|
return streamSimple(model, context, options);
|
|
@@ -184,12 +134,14 @@ export async function createAgentSession(options = {}) {
|
|
|
184
134
|
systemPrompt = output.system;
|
|
185
135
|
}
|
|
186
136
|
if (hookRunner.hasHandlers("tool.definition") && tools) {
|
|
187
|
-
|
|
188
|
-
const output = {
|
|
137
|
+
tools = await Promise.all(tools.map(async (tool) => {
|
|
138
|
+
const output = {
|
|
139
|
+
description: tool.description,
|
|
140
|
+
parameters: tool.parameters,
|
|
141
|
+
};
|
|
189
142
|
await hookRunner.trigger("tool.definition", { toolId: tool.name }, output);
|
|
190
143
|
return { ...tool, description: output.description, parameters: output.parameters };
|
|
191
144
|
}));
|
|
192
|
-
tools = updatedTools;
|
|
193
145
|
}
|
|
194
146
|
let streamOptions = { ...(options ?? {}) };
|
|
195
147
|
if (hookRunner.hasHandlers("chat.params")) {
|
|
@@ -205,168 +157,148 @@ export async function createAgentSession(options = {}) {
|
|
|
205
157
|
headers: { ...(streamOptions.headers ?? {}), ...headersOutput.headers },
|
|
206
158
|
};
|
|
207
159
|
}
|
|
208
|
-
return streamSimple(model, {
|
|
209
|
-
...context,
|
|
210
|
-
systemPrompt,
|
|
211
|
-
tools,
|
|
212
|
-
}, streamOptions);
|
|
160
|
+
return streamSimple(model, { ...context, systemPrompt, tools }, streamOptions);
|
|
213
161
|
};
|
|
162
|
+
}
|
|
163
|
+
function createAgentInstance(bootstrap, resolvedModel, thinkingLevel, extensionRunnerRef, hookRunnerRef) {
|
|
164
|
+
let agent;
|
|
214
165
|
agent = new Agent({
|
|
215
|
-
initialState: {
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
thinkingLevel,
|
|
219
|
-
tools: [],
|
|
220
|
-
},
|
|
221
|
-
convertToLlm: convertToLlmWithBlockImages,
|
|
222
|
-
sessionId: sessionManager.getSessionId(),
|
|
166
|
+
initialState: { systemPrompt: "", model: resolvedModel, thinkingLevel, tools: [] },
|
|
167
|
+
convertToLlm: createConvertToLlm(bootstrap.settingsManager),
|
|
168
|
+
sessionId: bootstrap.sessionManager.getSessionId(),
|
|
223
169
|
transformContext: async (messages) => {
|
|
224
170
|
let currentMessages = messages;
|
|
225
|
-
const
|
|
226
|
-
if (
|
|
227
|
-
currentMessages = await
|
|
171
|
+
const extensionRunner = extensionRunnerRef.current;
|
|
172
|
+
if (extensionRunner) {
|
|
173
|
+
currentMessages = await extensionRunner.emitContext(currentMessages);
|
|
228
174
|
}
|
|
229
175
|
const hookRunner = hookRunnerRef.current;
|
|
230
176
|
if (hookRunner?.hasHandlers("experimental.chat.messages.transform")) {
|
|
231
177
|
const output = { messages: currentMessages };
|
|
232
|
-
await hookRunner.trigger("experimental.chat.messages.transform", { sessionId: sessionManager.getSessionId() }, output);
|
|
178
|
+
await hookRunner.trigger("experimental.chat.messages.transform", { sessionId: bootstrap.sessionManager.getSessionId() }, output);
|
|
233
179
|
currentMessages = output.messages;
|
|
234
180
|
}
|
|
235
181
|
return currentMessages;
|
|
236
182
|
},
|
|
237
|
-
streamFn:
|
|
238
|
-
steeringMode: settingsManager.getSteeringMode(),
|
|
239
|
-
followUpMode: settingsManager.getFollowUpMode(),
|
|
240
|
-
thinkingBudgets: settingsManager.getThinkingBudgets(),
|
|
183
|
+
streamFn: createStreamWithHooks(bootstrap.sessionManager, hookRunnerRef),
|
|
184
|
+
steeringMode: bootstrap.settingsManager.getSteeringMode(),
|
|
185
|
+
followUpMode: bootstrap.settingsManager.getFollowUpMode(),
|
|
186
|
+
thinkingBudgets: bootstrap.settingsManager.getThinkingBudgets(),
|
|
241
187
|
getApiKey: async (provider) => {
|
|
242
|
-
// Use the provider argument from the in-flight request;
|
|
243
|
-
// agent.state.model may already be switched mid-turn.
|
|
244
188
|
const resolvedProvider = provider || agent.state.model?.provider;
|
|
245
|
-
if (!resolvedProvider)
|
|
189
|
+
if (!resolvedProvider)
|
|
246
190
|
throw new Error("No model selected");
|
|
191
|
+
const accountId = bootstrap.authStorage.getDefaultAccount(resolvedProvider);
|
|
192
|
+
const key = await bootstrap.modelRegistry.getApiKeyForProvider(resolvedProvider, accountId);
|
|
193
|
+
if (key)
|
|
194
|
+
return key;
|
|
195
|
+
const model = agent.state.model;
|
|
196
|
+
const accounts = bootstrap.modelRegistry.getAccounts(resolvedProvider);
|
|
197
|
+
if (accounts.length > 1) {
|
|
198
|
+
throw new Error(`Multiple accounts found for "${resolvedProvider}". Use '--account <name>' to specify which account to use. Available accounts: ${accounts.map((entry) => entry.credential.accountName || entry.accountId).join(", ")}`);
|
|
247
199
|
}
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
const key = await modelRegistry.getApiKeyForProvider(resolvedProvider, accountId);
|
|
251
|
-
if (!key) {
|
|
252
|
-
const model = agent.state.model;
|
|
253
|
-
const isOAuth = model && modelRegistry.isUsingOAuth(model);
|
|
254
|
-
const accounts = modelRegistry.getAccounts(resolvedProvider);
|
|
255
|
-
if (accounts.length > 1) {
|
|
256
|
-
// Multiple accounts exist - prompt user to select
|
|
257
|
-
throw new Error(`Multiple accounts found for "${resolvedProvider}". ` +
|
|
258
|
-
`Use '--account <name>' to specify which account to use. ` +
|
|
259
|
-
`Available accounts: ${accounts.map(a => a.credential.accountName || a.accountId).join(', ')}`);
|
|
260
|
-
}
|
|
261
|
-
if (isOAuth) {
|
|
262
|
-
throw new Error(`Authentication failed for "${resolvedProvider}". ` +
|
|
263
|
-
`Credentials may have expired or network is unavailable. ` +
|
|
264
|
-
`Run '/login ${resolvedProvider}' to re-authenticate.`);
|
|
265
|
-
}
|
|
266
|
-
throw new Error(`No API key found for "${resolvedProvider}". ` +
|
|
267
|
-
`Set an API key environment variable or run '/login ${resolvedProvider}'.`);
|
|
200
|
+
if (model && bootstrap.modelRegistry.isUsingOAuth(model)) {
|
|
201
|
+
throw new Error(`Authentication failed for "${resolvedProvider}". Credentials may have expired or network is unavailable. Run '/login ${resolvedProvider}' to re-authenticate.`);
|
|
268
202
|
}
|
|
269
|
-
|
|
203
|
+
throw new Error(`No API key found for "${resolvedProvider}". Set an API key environment variable or run '/login ${resolvedProvider}'.`);
|
|
270
204
|
},
|
|
271
205
|
});
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
206
|
+
return agent;
|
|
207
|
+
}
|
|
208
|
+
function createBaseTools(options, defaultToolNames) {
|
|
209
|
+
return options.tools
|
|
210
|
+
? options.tools.map((tool) => tool.name).filter((name) => name in allTools)
|
|
211
|
+
: defaultToolNames;
|
|
212
|
+
}
|
|
213
|
+
async function attachOptionalMcpTools(session, bootstrap, options) {
|
|
214
|
+
const configPath = options.mcp?.configPath ?? getMCPConfigPath();
|
|
215
|
+
const enabled = options.mcp?.enabled !== false && bootstrap.settingsManager.getMCPEnabled() && existsSync(configPath);
|
|
216
|
+
if (!enabled || !bootstrap.settingsManager.getMCPAutoConnect()) {
|
|
217
|
+
return undefined;
|
|
275
218
|
}
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
if (
|
|
279
|
-
|
|
219
|
+
createMCPTools(configPath, { timeout: bootstrap.settingsManager.getMCPTimeout() })
|
|
220
|
+
.then((result) => {
|
|
221
|
+
if (result.tools.length > 0) {
|
|
222
|
+
session.registerMCPTools(result.tools, result.pool);
|
|
223
|
+
}
|
|
224
|
+
})
|
|
225
|
+
.catch((error) => {
|
|
226
|
+
console.warn("MCP initialization failed:", error);
|
|
227
|
+
});
|
|
228
|
+
return undefined;
|
|
229
|
+
}
|
|
230
|
+
async function attachOptionalMemoryTools(session, bootstrap, options) {
|
|
231
|
+
const memoryEnabled = options.memory?.enabled === true
|
|
232
|
+
? true
|
|
233
|
+
: options.memory?.enabled === false
|
|
234
|
+
? false
|
|
235
|
+
: bootstrap.settingsManager.getMemoryEnabled() && bootstrap.settingsManager.getMemoryAutoConnect();
|
|
236
|
+
if (!memoryEnabled) {
|
|
237
|
+
return undefined;
|
|
238
|
+
}
|
|
239
|
+
try {
|
|
240
|
+
const openaiKey = await bootstrap.modelRegistry.getApiKeyForProvider("openai");
|
|
241
|
+
if (!openaiKey) {
|
|
242
|
+
console.warn("Memory: OpenAI API key not found, memory disabled. Set OPENAI_API_KEY to enable memory.");
|
|
243
|
+
return undefined;
|
|
244
|
+
}
|
|
245
|
+
const memory = await createMemory({
|
|
246
|
+
apiKey: openaiKey,
|
|
247
|
+
lastMessages: bootstrap.settingsManager.getMemoryLastMessages(),
|
|
248
|
+
workingMemory: bootstrap.settingsManager.getMemoryWorkingMemoryEnabled()
|
|
249
|
+
? { enabled: true, scope: "resource", template: DEFAULT_WORKING_MEMORY_TEMPLATE }
|
|
250
|
+
: undefined,
|
|
251
|
+
semanticRecall: bootstrap.settingsManager.getMemorySemanticRecallEnabled() ? { topK: 5, messageRange: 2 } : undefined,
|
|
252
|
+
observationalMemory: bootstrap.settingsManager.getMemoryObservationalMemoryEnabled()
|
|
253
|
+
? { enabled: true, scope: "thread" }
|
|
254
|
+
: undefined,
|
|
255
|
+
});
|
|
256
|
+
const tools = createMemoryTools(memory, {
|
|
257
|
+
threadId: bootstrap.sessionManager.getSessionId(),
|
|
258
|
+
resourceId: "default-user",
|
|
259
|
+
});
|
|
260
|
+
if (tools.length > 0) {
|
|
261
|
+
session.registerMemoryTools(tools, memory);
|
|
262
|
+
return { tools, memory };
|
|
280
263
|
}
|
|
281
|
-
|
|
264
|
+
}
|
|
265
|
+
catch (error) {
|
|
266
|
+
console.warn("Memory initialization failed:", error);
|
|
267
|
+
}
|
|
268
|
+
return undefined;
|
|
269
|
+
}
|
|
270
|
+
export async function createAgentSession(options = {}) {
|
|
271
|
+
const bootstrap = await bootstrapSessionDependencies(options);
|
|
272
|
+
const extensionRunnerRef = {};
|
|
273
|
+
const hookRunnerRef = {};
|
|
274
|
+
const resolvedModel = await resolveInitialModel(options, bootstrap);
|
|
275
|
+
const defaultActiveToolNames = ["read", "bash", "edit", "write", "task", "todoread", "todowrite", "webfetch", "websearch"];
|
|
276
|
+
const initialActiveToolNames = createBaseTools(options, defaultActiveToolNames);
|
|
277
|
+
const agent = createAgentInstance(bootstrap, resolvedModel.model, resolvedModel.thinkingLevel, extensionRunnerRef, hookRunnerRef);
|
|
278
|
+
if (bootstrap.sessionManager.buildSessionContext().messages.length > 0) {
|
|
279
|
+
agent.replaceMessages(bootstrap.sessionManager.buildSessionContext().messages);
|
|
282
280
|
}
|
|
283
281
|
const session = new AgentSession({
|
|
284
282
|
agent,
|
|
285
|
-
sessionManager,
|
|
286
|
-
settingsManager,
|
|
287
|
-
cwd,
|
|
288
|
-
agentDir,
|
|
283
|
+
sessionManager: bootstrap.sessionManager,
|
|
284
|
+
settingsManager: bootstrap.settingsManager,
|
|
285
|
+
cwd: bootstrap.cwd,
|
|
286
|
+
agentDir: bootstrap.agentDir,
|
|
289
287
|
scopedModels: options.scopedModels,
|
|
290
|
-
resourceLoader,
|
|
288
|
+
resourceLoader: bootstrap.resourceLoader,
|
|
291
289
|
customTools: options.customTools,
|
|
292
|
-
modelRegistry,
|
|
290
|
+
modelRegistry: bootstrap.modelRegistry,
|
|
293
291
|
initialActiveToolNames,
|
|
294
292
|
extensionRunnerRef,
|
|
295
293
|
hookRunnerRef,
|
|
296
294
|
});
|
|
297
|
-
const extensionsResult = resourceLoader.getExtensions();
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
let mcpResult;
|
|
301
|
-
const mcpConfigPath = options.mcp?.configPath ?? getMCPConfigPath();
|
|
302
|
-
const mcpEnabled = options.mcp?.enabled !== false && settingsManager.getMCPEnabled() && existsSync(mcpConfigPath);
|
|
303
|
-
if (mcpEnabled && settingsManager.getMCPAutoConnect()) {
|
|
304
|
-
// Load MCP in background without awaiting - don't block startup
|
|
305
|
-
createMCPTools(mcpConfigPath, {
|
|
306
|
-
timeout: settingsManager.getMCPTimeout(),
|
|
307
|
-
})
|
|
308
|
-
.then((result) => {
|
|
309
|
-
// Register MCP tools with the session
|
|
310
|
-
if (result.tools.length > 0) {
|
|
311
|
-
session.registerMCPTools(result.tools, result.pool);
|
|
312
|
-
}
|
|
313
|
-
})
|
|
314
|
-
.catch((err) => {
|
|
315
|
-
console.warn("MCP initialization failed:", err);
|
|
316
|
-
});
|
|
317
|
-
}
|
|
318
|
-
// Initialize Memory system if enabled
|
|
319
|
-
let memoryResult;
|
|
320
|
-
const memoryEnabled = options.memory?.enabled === true
|
|
321
|
-
? true
|
|
322
|
-
: options.memory?.enabled === false
|
|
323
|
-
? false
|
|
324
|
-
: settingsManager.getMemoryEnabled() && settingsManager.getMemoryAutoConnect();
|
|
325
|
-
if (memoryEnabled) {
|
|
326
|
-
try {
|
|
327
|
-
// Get OpenAI API key for embedder (memory requires embeddings)
|
|
328
|
-
const openaiKey = await modelRegistry.getApiKeyForProvider("openai");
|
|
329
|
-
if (!openaiKey) {
|
|
330
|
-
console.warn("Memory: OpenAI API key not found, memory disabled. Set OPENAI_API_KEY to enable memory.");
|
|
331
|
-
}
|
|
332
|
-
else {
|
|
333
|
-
// Create memory instance with settings
|
|
334
|
-
const memory = await createMemory({
|
|
335
|
-
apiKey: openaiKey,
|
|
336
|
-
lastMessages: settingsManager.getMemoryLastMessages(),
|
|
337
|
-
workingMemory: settingsManager.getMemoryWorkingMemoryEnabled()
|
|
338
|
-
? { enabled: true, scope: "resource", template: DEFAULT_WORKING_MEMORY_TEMPLATE }
|
|
339
|
-
: undefined,
|
|
340
|
-
semanticRecall: settingsManager.getMemorySemanticRecallEnabled()
|
|
341
|
-
? { topK: 5, messageRange: 2 }
|
|
342
|
-
: undefined,
|
|
343
|
-
observationalMemory: settingsManager.getMemoryObservationalMemoryEnabled()
|
|
344
|
-
? { enabled: true, scope: "thread" }
|
|
345
|
-
: undefined,
|
|
346
|
-
});
|
|
347
|
-
// Create memory tools
|
|
348
|
-
const memoryTools = createMemoryTools(memory, {
|
|
349
|
-
threadId: sessionManager.getSessionId(),
|
|
350
|
-
resourceId: "default-user",
|
|
351
|
-
});
|
|
352
|
-
if (memoryTools.length > 0) {
|
|
353
|
-
// Register memory tools with the session
|
|
354
|
-
session.registerMemoryTools(memoryTools, memory);
|
|
355
|
-
memoryResult = {
|
|
356
|
-
tools: memoryTools,
|
|
357
|
-
memory,
|
|
358
|
-
};
|
|
359
|
-
}
|
|
360
|
-
}
|
|
361
|
-
}
|
|
362
|
-
catch (err) {
|
|
363
|
-
console.warn("Memory initialization failed:", err);
|
|
364
|
-
}
|
|
365
|
-
}
|
|
295
|
+
const extensionsResult = bootstrap.resourceLoader.getExtensions();
|
|
296
|
+
const mcpResult = await attachOptionalMcpTools(session, bootstrap, options);
|
|
297
|
+
const memoryResult = await attachOptionalMemoryTools(session, bootstrap, options);
|
|
366
298
|
return {
|
|
367
299
|
session,
|
|
368
300
|
extensionsResult,
|
|
369
|
-
modelFallbackMessage,
|
|
301
|
+
modelFallbackMessage: resolvedModel.modelFallbackMessage,
|
|
370
302
|
mcpResult,
|
|
371
303
|
memoryResult,
|
|
372
304
|
};
|
package/dist/core/sdk.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../src/core/sdk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,KAAK,EAAwD,MAAM,gBAAgB,CAAC;AAC7F,OAAO,EAAE,YAAY,EAAsD,MAAM,aAAa,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,gBAAgB,EAAuB,MAAM,cAAc,CAAC;AAC/F,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACpC,OAAO,EACN,QAAQ,EACR,QAAQ,EACR,WAAW,EACX,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,cAAc,EACd,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,aAAa,EAGb,SAAS;AACT,cAAc;AACd,cAAc;AAGd,iBAAiB;AACjB,iBAAiB,EACjB,YAAY,EACZ,+BAA+B,GAE/B,MAAM,kBAAkB,CAAC;AA8E1B,OAAO;AACN,sCAAsC;AACtC,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,WAAW,EACX,aAAa,EACb,QAAQ,IAAI,eAAe;AAC3B,kCAAkC;AAClC,iBAAiB,EACjB,mBAAmB,EACnB,cAAc,EACd,cAAc,EACd,cAAc,EACd,eAAe,EACf,cAAc,EACd,cAAc,EACd,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,mBAAmB,GACnB,CAAC;AAEF,mBAAmB;AAEnB,SAAS,kBAAkB;IAC1B,OAAO,WAAW,EAAE,CAAC;AACtB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,UAAqC,EAAE;IAC/E,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACzC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,kBAAkB,EAAE,CAAC;IAC1D,IAAI,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IAE5C,uDAAuD;IACvD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5E,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAChF,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,WAAW,CAAC,QAAQ,CAAC,CAAC;IACrE,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,IAAI,aAAa,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;IAE1F,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,eAAe,CAAC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACzF,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAE5E,IAAI,CAAC,cAAc,EAAE,CAAC;QACrB,cAAc,GAAG,IAAI,qBAAqB,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,CAAC;QAC/E,MAAM,cAAc,CAAC,MAAM,EAAE,CAAC;QAC9B,IAAI,CAAC,uBAAuB,CAAC,CAAC;IAC/B,CAAC;IAED,gDAAgD;IAChD,MAAM,eAAe,GAAG,cAAc,CAAC,mBAAmB,EAAE,CAAC;IAC7D,MAAM,kBAAkB,GAAG,eAAe,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IAE/D,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC1B,IAAI,oBAAwC,CAAC;IAE7C,oDAAoD;IACpD,IAAI,CAAC,KAAK,IAAI,kBAAkB,IAAI,eAAe,CAAC,KAAK,EAAE,CAAC;QAC3D,MAAM,aAAa,GAAG,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACxG,IAAI,aAAa,IAAI,CAAC,MAAM,aAAa,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;YACrE,KAAK,GAAG,aAAa,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,oBAAoB,GAAG,2BAA2B,eAAe,CAAC,KAAK,CAAC,QAAQ,IAAI,eAAe,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACrH,CAAC;IACF,CAAC;IAED,4FAA4F;IAC5F,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC;YACrC,YAAY,EAAE,EAAE;YAChB,YAAY,EAAE,kBAAkB;YAChC,eAAe,EAAE,eAAe,CAAC,kBAAkB,EAAE;YACrD,cAAc,EAAE,eAAe,CAAC,eAAe,EAAE;YACjD,oBAAoB,EAAE,eAAe,CAAC,uBAAuB,EAAE;YAC/D,aAAa;SACb,CAAC,CAAC;QACH,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QACrB,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,oBAAoB,GAAG,+EAA+E,IAAI,CAAC,WAAW,EAAE,EAAE,mBAAmB,CAAC,sCAAsC,CAAC;QACtL,CAAC;aAAM,IAAI,oBAAoB,EAAE,CAAC;YACjC,oBAAoB,IAAI,WAAW,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,EAAE,EAAE,CAAC;QACjE,CAAC;IACF,CAAC;IAED,IAAI,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;IAE1C,sDAAsD;IACtD,IAAI,aAAa,KAAK,SAAS,IAAI,kBAAkB,EAAE,CAAC;QACvD,aAAa,GAAG,eAAe,CAAC,aAA8B,CAAC;IAChE,CAAC;IAED,gCAAgC;IAChC,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;QACjC,aAAa,GAAG,eAAe,CAAC,uBAAuB,EAAE,IAAI,KAAK,CAAC;IACpE,CAAC;IAED,8BAA8B;IAC9B,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;QAChC,aAAa,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,MAAM,sBAAsB,GAAe;QAC1C,MAAM;QACN,MAAM;QACN,MAAM;QACN,OAAO;QACP,MAAM;QACN,UAAU;QACV,WAAW;QACX,UAAU;QACV,WAAW;KACX,CAAC;IACF,MAAM,sBAAsB,GAAe,OAAO,CAAC,KAAK;QACvD,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAiB,EAAE,CAAC,CAAC,IAAI,QAAQ,CAAC;QAC9E,CAAC,CAAC,sBAAsB,CAAC;IAE1B,IAAI,KAAY,CAAC;IAEjB,+FAA+F;IAC/F,MAAM,2BAA2B,GAAG,CAAC,QAAwB,EAAa,EAAE;QAC3E,MAAM,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;QACzC,+DAA+D;QAC/D,IAAI,CAAC,eAAe,CAAC,cAAc,EAAE,EAAE,CAAC;YACvC,OAAO,SAAS,CAAC;QAClB,CAAC;QACD,6EAA6E;QAC7E,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YAC5B,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBACtD,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;gBAC5B,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC5B,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;oBAC1D,IAAI,SAAS,EAAE,CAAC;wBACf,MAAM,eAAe,GAAG,OAAO;6BAC7B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACV,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,4BAA4B,EAAE,CAAC,CAAC,CAAC,CAAC,CACtF;6BACA,MAAM,CACN,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;wBACb,wDAAwD;wBACxD,CAAC,CACA,CAAC,CAAC,IAAI,KAAK,MAAM;4BACjB,CAAC,CAAC,IAAI,KAAK,4BAA4B;4BACvC,CAAC,GAAG,CAAC;4BACL,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM;4BACzB,GAAG,CAAC,CAAC,GAAG,CAAC,CAAoC,CAAC,IAAI,KAAK,4BAA4B,CACpF,CACF,CAAC;wBACH,OAAO,EAAE,GAAG,GAAG,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;oBAC7C,CAAC;gBACF,CAAC;YACF,CAAC;YACD,OAAO,GAAG,CAAC;QACZ,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAkC,EAAE,CAAC;IAC7D,MAAM,aAAa,GAA6B,EAAE,CAAC;IAEnD,MAAM,eAAe,GAAa,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;QACnE,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC;QACzC,IAAI,CAAC,UAAU,EAAE,CAAC;YACjB,OAAO,YAAY,CAAC,KAAK,EAAE,OAAO,EAAE,OAA8B,CAAC,CAAC;QACrE,CAAC;QAED,MAAM,SAAS,GAAG,cAAc,CAAC,YAAY,EAAE,CAAC;QAChD,IAAI,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC;QAC9C,IAAI,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAE1B,IAAI,UAAU,CAAC,WAAW,CAAC,oCAAoC,CAAC,EAAE,CAAC;YAClE,MAAM,MAAM,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;YACxC,MAAM,UAAU,CAAC,OAAO,CAAC,oCAAoC,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,MAAM,CAAC,CAAC;YAC7F,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;QAC9B,CAAC;QAED,IAAI,UAAU,CAAC,WAAW,CAAC,iBAAiB,CAAC,IAAI,KAAK,EAAE,CAAC;YACxD,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,GAAG,CACrC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBACxB,MAAM,MAAM,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC9E,MAAM,UAAU,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;gBAC3E,OAAO,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC;YACpF,CAAC,CAAC,CACF,CAAC;YACF,KAAK,GAAG,YAAY,CAAC;QACtB,CAAC;QAED,IAAI,aAAa,GAAG,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,EAAmD,CAAC;QAE5F,IAAI,UAAU,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE,CAAC;YAC3C,MAAM,YAAY,GAAG,EAAE,OAAO,EAAE,EAAE,GAAG,aAAa,EAAE,EAAE,CAAC;YACvD,MAAM,UAAU,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,YAAY,CAAC,CAAC;YAC1F,aAAa,GAAG,YAAY,CAAC,OAAO,CAAC;QACtC,CAAC;QAED,IAAI,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE,CAAC;YAC5C,MAAM,aAAa,GAAG,EAAE,OAAO,EAAE,EAAE,GAAG,CAAC,aAAa,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YACxE,MAAM,UAAU,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,aAAa,CAAC,CAAC;YAC5F,aAAa,GAAG;gBACf,GAAG,aAAa;gBAChB,OAAO,EAAE,EAAE,GAAG,CAAC,aAAa,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,aAAa,CAAC,OAAO,EAAE;aACvE,CAAC;QACH,CAAC;QAED,OAAO,YAAY,CAClB,KAAK,EACL;YACC,GAAG,OAAO;YACV,YAAY;YACZ,KAAK;SACL,EACD,aAAa,CACb,CAAC;IACH,CAAC,CAAC;IAEF,KAAK,GAAG,IAAI,KAAK,CAAC;QACjB,YAAY,EAAE;YACb,YAAY,EAAE,EAAE;YAChB,KAAK;YACL,aAAa;YACb,KAAK,EAAE,EAAE;SACT;QACD,YAAY,EAAE,2BAA2B;QACzC,SAAS,EAAE,cAAc,CAAC,YAAY,EAAE;QACxC,gBAAgB,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;YACpC,IAAI,eAAe,GAAG,QAAQ,CAAC;YAC/B,MAAM,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC;YAC1C,IAAI,MAAM,EAAE,CAAC;gBACZ,eAAe,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;YAC7D,CAAC;YACD,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC;YACzC,IAAI,UAAU,EAAE,WAAW,CAAC,sCAAsC,CAAC,EAAE,CAAC;gBACrE,MAAM,MAAM,GAAG,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC;gBAC7C,MAAM,UAAU,CAAC,OAAO,CACvB,sCAAsC,EACtC,EAAE,SAAS,EAAE,cAAc,CAAC,YAAY,EAAE,EAAE,EAC5C,MAAM,CACN,CAAC;gBACF,eAAe,GAAG,MAAM,CAAC,QAAQ,CAAC;YACnC,CAAC;YACD,OAAO,eAAe,CAAC;QACxB,CAAC;QACD,QAAQ,EAAE,eAAe;QACzB,YAAY,EAAE,eAAe,CAAC,eAAe,EAAE;QAC/C,YAAY,EAAE,eAAe,CAAC,eAAe,EAAE;QAC/C,eAAe,EAAE,eAAe,CAAC,kBAAkB,EAAE;QACrD,SAAS,EAAE,KAAK,EAAE,QAAgB,EAAE,EAAE;YACrC,wDAAwD;YACxD,sDAAsD;YACtD,MAAM,gBAAgB,GAAG,QAAQ,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC;YACjE,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;YACtC,CAAC;YAED,qEAAqE;YACrE,MAAM,SAAS,GAAG,WAAW,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;YAElE,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,oBAAoB,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;YAClF,IAAI,CAAC,GAAG,EAAE,CAAC;gBACV,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC;gBAChC,MAAM,OAAO,GAAG,KAAK,IAAI,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBAC3D,MAAM,QAAQ,GAAG,aAAa,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;gBAE7D,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACzB,kDAAkD;oBAClD,MAAM,IAAI,KAAK,CACd,gCAAgC,gBAAgB,KAAK;wBACpD,0DAA0D;wBAC1D,uBAAuB,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC/F,CAAC;gBACH,CAAC;gBAED,IAAI,OAAO,EAAE,CAAC;oBACb,MAAM,IAAI,KAAK,CACd,8BAA8B,gBAAgB,KAAK;wBAClD,0DAA0D;wBAC1D,eAAe,gBAAgB,uBAAuB,CACvD,CAAC;gBACH,CAAC;gBACD,MAAM,IAAI,KAAK,CACd,yBAAyB,gBAAgB,KAAK;oBAC7C,sDAAsD,gBAAgB,IAAI,CAC3E,CAAC;YACH,CAAC;YACD,OAAO,GAAG,CAAC;QACZ,CAAC;KACD,CAAC,CAAC;IAEH,gDAAgD;IAChD,IAAI,kBAAkB,EAAE,CAAC;QACxB,KAAK,CAAC,eAAe,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IACjD,CAAC;SAAM,CAAC;QACP,2FAA2F;QAC3F,IAAI,KAAK,EAAE,CAAC;YACX,cAAc,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;QAC5D,CAAC;QACD,cAAc,CAAC,yBAAyB,CAAC,aAAa,CAAC,CAAC;IACzD,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC;QAChC,KAAK;QACL,cAAc;QACd,eAAe;QACf,GAAG;QACH,QAAQ;QACR,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,cAAc;QACd,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,aAAa;QACb,sBAAsB;QACtB,kBAAkB;QAClB,aAAa;KACb,CAAC,CAAC;IACH,MAAM,gBAAgB,GAAG,cAAc,CAAC,aAAa,EAAE,CAAC;IAExD,kCAAkC;IAClC,4EAA4E;IAC5E,IAAI,SAA2C,CAAC;IAChD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE,UAAU,IAAI,gBAAgB,EAAE,CAAC;IACpE,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,OAAO,KAAK,KAAK,IAAI,eAAe,CAAC,aAAa,EAAE,IAAI,UAAU,CAAC,aAAa,CAAC,CAAC;IAElH,IAAI,UAAU,IAAI,eAAe,CAAC,iBAAiB,EAAE,EAAE,CAAC;QACvD,gEAAgE;QAChE,cAAc,CAAC,aAAa,EAAE;YAC7B,OAAO,EAAE,eAAe,CAAC,aAAa,EAAE;SACxC,CAAC;aACA,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YAChB,sCAAsC;YACtC,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YACrD,CAAC;QACF,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACd,OAAO,CAAC,IAAI,CAAC,4BAA4B,EAAE,GAAG,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,sCAAsC;IACtC,IAAI,YAAiD,CAAC;IACtD,MAAM,aAAa,GAClB,OAAO,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI;QAC/B,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,KAAK,KAAK;YAClC,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,eAAe,CAAC,gBAAgB,EAAE,IAAI,eAAe,CAAC,oBAAoB,EAAE,CAAC;IAElF,IAAI,aAAa,EAAE,CAAC;QACnB,IAAI,CAAC;YACJ,+DAA+D;YAC/D,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;YAErE,IAAI,CAAC,SAAS,EAAE,CAAC;gBAChB,OAAO,CAAC,IAAI,CAAC,yFAAyF,CAAC,CAAC;YACzG,CAAC;iBAAM,CAAC;gBACP,uCAAuC;gBACvC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC;oBACjC,MAAM,EAAE,SAAS;oBACjB,YAAY,EAAE,eAAe,CAAC,qBAAqB,EAAE;oBACrD,aAAa,EAAE,eAAe,CAAC,6BAA6B,EAAE;wBAC7D,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,+BAA+B,EAAE;wBACjF,CAAC,CAAC,SAAS;oBACZ,cAAc,EAAE,eAAe,CAAC,8BAA8B,EAAE;wBAC/D,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;wBAC9B,CAAC,CAAC,SAAS;oBACZ,mBAAmB,EAAE,eAAe,CAAC,mCAAmC,EAAE;wBACzE,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE;wBACpC,CAAC,CAAC,SAAS;iBACZ,CAAC,CAAC;gBAEH,sBAAsB;gBACtB,MAAM,WAAW,GAAG,iBAAiB,CAAC,MAAM,EAAE;oBAC7C,QAAQ,EAAE,cAAc,CAAC,YAAY,EAAE;oBACvC,UAAU,EAAE,cAAc;iBAC1B,CAAC,CAAC;gBAEH,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC5B,yCAAyC;oBACzC,OAAO,CAAC,mBAAmB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;oBAEjD,YAAY,GAAG;wBACd,KAAK,EAAE,WAAW;wBAClB,MAAM;qBACN,CAAC;gBACH,CAAC;YACF,CAAC;QACF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,OAAO,CAAC,IAAI,CAAC,+BAA+B,EAAE,GAAG,CAAC,CAAC;QACpD,CAAC;IACF,CAAC;IAED,OAAO;QACN,OAAO;QACP,gBAAgB;QAChB,oBAAoB;QACpB,SAAS;QACT,YAAY;KACZ,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../src/core/sdk.ts"],"names":[],"mappings":"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"}
|