@ashx-j/lunr 0.2.21 → 0.2.23
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 +4 -2
- package/README.md +23 -5
- package/dist/builtin-extensions/index.d.ts.map +1 -1
- package/dist/builtin-extensions/index.js +1 -0
- package/dist/builtin-extensions/index.js.map +1 -1
- package/dist/builtin-extensions/lunr-browser.d.ts +9 -0
- package/dist/builtin-extensions/lunr-browser.d.ts.map +1 -0
- package/dist/builtin-extensions/lunr-browser.js +169 -0
- package/dist/builtin-extensions/lunr-browser.js.map +1 -0
- package/dist/builtin-extensions/lunr-todos.d.ts.map +1 -1
- package/dist/builtin-extensions/lunr-todos.js +15 -0
- package/dist/builtin-extensions/lunr-todos.js.map +1 -1
- package/dist/builtin-extensions/pi-intercom/index.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-intercom/index.js +3 -0
- package/dist/builtin-extensions/pi-intercom/index.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/extension/control-notices.d.ts +1 -1
- package/dist/builtin-extensions/pi-subagents/src/extension/control-notices.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/extension/control-notices.js +5 -1
- package/dist/builtin-extensions/pi-subagents/src/extension/control-notices.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/extension/index.d.ts +2 -2
- package/dist/builtin-extensions/pi-subagents/src/extension/index.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/extension/index.js +18 -5
- package/dist/builtin-extensions/pi-subagents/src/extension/index.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/extension/tool-description.d.ts +4 -3
- package/dist/builtin-extensions/pi-subagents/src/extension/tool-description.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/extension/tool-description.js +3 -0
- package/dist/builtin-extensions/pi-subagents/src/extension/tool-description.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/intercom/communication.d.ts +17 -0
- package/dist/builtin-extensions/pi-subagents/src/intercom/communication.d.ts.map +1 -0
- package/dist/builtin-extensions/pi-subagents/src/intercom/communication.js +45 -0
- package/dist/builtin-extensions/pi-subagents/src/intercom/communication.js.map +1 -0
- package/dist/builtin-extensions/pi-subagents/src/intercom/intercom-bridge.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/intercom/intercom-bridge.js +4 -11
- package/dist/builtin-extensions/pi-subagents/src/intercom/intercom-bridge.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/intercom/native-supervisor-channel.d.ts +4 -1
- package/dist/builtin-extensions/pi-subagents/src/intercom/native-supervisor-channel.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/intercom/native-supervisor-channel.js +160 -51
- package/dist/builtin-extensions/pi-subagents/src/intercom/native-supervisor-channel.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/intercom/supervisor-ask.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/intercom/supervisor-ask.js +5 -0
- package/dist/builtin-extensions/pi-subagents/src/intercom/supervisor-ask.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/intercom/supervisor-questions.d.ts +2 -0
- package/dist/builtin-extensions/pi-subagents/src/intercom/supervisor-questions.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/intercom/supervisor-questions.js +3 -2
- package/dist/builtin-extensions/pi-subagents/src/intercom/supervisor-questions.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/auto-drain.d.ts +1 -0
- package/dist/builtin-extensions/pi-subagents/src/runs/background/auto-drain.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/auto-drain.js +2 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/auto-drain.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-wait.d.ts +3 -0
- package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-wait.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-wait.js +11 -0
- package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-wait.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/wait-tool.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/wait-tool.js +41 -3
- package/dist/builtin-extensions/pi-subagents/src/runs/background/wait-tool.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.js +4 -0
- package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/pi-args.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/pi-args.js +3 -0
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/pi-args.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/subagent-control.d.ts +1 -0
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/subagent-control.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/subagent-control.js +3 -0
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/subagent-control.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/subagent-prompt-runtime.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/subagent-prompt-runtime.js +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/subagent-prompt-runtime.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/shared/types.d.ts +1 -0
- package/dist/builtin-extensions/pi-subagents/src/shared/types.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/shared/types.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/tui/communication.d.ts +18 -0
- package/dist/builtin-extensions/pi-subagents/src/tui/communication.d.ts.map +1 -0
- package/dist/builtin-extensions/pi-subagents/src/tui/communication.js +48 -0
- package/dist/builtin-extensions/pi-subagents/src/tui/communication.js.map +1 -0
- package/dist/builtin-extensions/pi-web-access/index.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-web-access/index.js +11 -7
- package/dist/builtin-extensions/pi-web-access/index.js.map +1 -1
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +2 -1
- package/dist/cli/args.js.map +1 -1
- package/dist/cli/install-cli.d.ts.map +1 -1
- package/dist/cli/install-cli.js +15 -45
- package/dist/cli/install-cli.js.map +1 -1
- package/dist/core/agent-session-runtime.d.ts +9 -0
- package/dist/core/agent-session-runtime.d.ts.map +1 -1
- package/dist/core/agent-session-runtime.js +126 -29
- package/dist/core/agent-session-runtime.js.map +1 -1
- package/dist/core/agent-session.d.ts +22 -0
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +250 -105
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/browser/network.d.ts +9 -0
- package/dist/core/browser/network.d.ts.map +1 -0
- package/dist/core/browser/network.js +146 -0
- package/dist/core/browser/network.js.map +1 -0
- package/dist/core/browser/runtime.d.ts +24 -0
- package/dist/core/browser/runtime.d.ts.map +1 -0
- package/dist/core/browser/runtime.js +289 -0
- package/dist/core/browser/runtime.js.map +1 -0
- package/dist/core/browser/schema.d.ts +16 -0
- package/dist/core/browser/schema.d.ts.map +1 -0
- package/dist/core/browser/schema.js +36 -0
- package/dist/core/browser/schema.js.map +1 -0
- package/dist/core/browser/settings.d.ts +8 -0
- package/dist/core/browser/settings.d.ts.map +1 -0
- package/dist/core/browser/settings.js +30 -0
- package/dist/core/browser/settings.js.map +1 -0
- package/dist/core/browser/setup.d.ts +2 -0
- package/dist/core/browser/setup.d.ts.map +1 -0
- package/dist/core/browser/setup.js +16 -0
- package/dist/core/browser/setup.js.map +1 -0
- package/dist/core/customize.d.ts.map +1 -1
- package/dist/core/customize.js +15 -14
- package/dist/core/customize.js.map +1 -1
- package/dist/core/export-html/index.d.ts.map +1 -1
- package/dist/core/export-html/index.js +1 -1
- package/dist/core/export-html/index.js.map +1 -1
- package/dist/core/extensions/runner.d.ts +1 -0
- package/dist/core/extensions/runner.d.ts.map +1 -1
- package/dist/core/extensions/runner.js +1 -1
- package/dist/core/extensions/runner.js.map +1 -1
- package/dist/core/extensions/types.d.ts +1 -1
- package/dist/core/extensions/types.d.ts.map +1 -1
- package/dist/core/extensions/types.js.map +1 -1
- package/dist/core/install-features.d.ts.map +1 -1
- package/dist/core/install-features.js +10 -8
- package/dist/core/install-features.js.map +1 -1
- package/dist/core/memory-cap.d.ts.map +1 -1
- package/dist/core/memory-cap.js +5 -3
- package/dist/core/memory-cap.js.map +1 -1
- package/dist/core/model-tiers.d.ts.map +1 -1
- package/dist/core/model-tiers.js +9 -6
- package/dist/core/model-tiers.js.map +1 -1
- package/dist/core/permissions.d.ts.map +1 -1
- package/dist/core/permissions.js +9 -0
- package/dist/core/permissions.js.map +1 -1
- package/dist/core/plan-mode.d.ts.map +1 -1
- package/dist/core/plan-mode.js +3 -0
- package/dist/core/plan-mode.js.map +1 -1
- package/dist/core/process-registry.d.ts.map +1 -1
- package/dist/core/process-registry.js +6 -4
- package/dist/core/process-registry.js.map +1 -1
- package/dist/core/runtime-scope.d.ts +11 -0
- package/dist/core/runtime-scope.d.ts.map +1 -0
- package/dist/core/runtime-scope.js +3 -0
- package/dist/core/runtime-scope.js.map +1 -0
- package/dist/core/sdk.d.ts.map +1 -1
- package/dist/core/sdk.js +13 -0
- package/dist/core/sdk.js.map +1 -1
- package/dist/core/session-handoff.d.ts +35 -0
- package/dist/core/session-handoff.d.ts.map +1 -0
- package/dist/core/session-handoff.js +214 -0
- package/dist/core/session-handoff.js.map +1 -0
- package/dist/core/session-manager.d.ts +20 -0
- package/dist/core/session-manager.d.ts.map +1 -1
- package/dist/core/session-manager.js +184 -22
- package/dist/core/session-manager.js.map +1 -1
- package/dist/core/session-ownership.d.ts +28 -0
- package/dist/core/session-ownership.d.ts.map +1 -0
- package/dist/core/session-ownership.js +138 -0
- package/dist/core/session-ownership.js.map +1 -0
- package/dist/core/session-retention.d.ts.map +1 -1
- package/dist/core/session-retention.js +11 -2
- package/dist/core/session-retention.js.map +1 -1
- package/dist/core/settings-manager.d.ts +11 -0
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js +27 -0
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/core/slash-commands.d.ts.map +1 -1
- package/dist/core/slash-commands.js +2 -0
- package/dist/core/slash-commands.js.map +1 -1
- package/dist/core/subagent-wait-interruption.d.ts +11 -0
- package/dist/core/subagent-wait-interruption.d.ts.map +1 -0
- package/dist/core/subagent-wait-interruption.js +19 -0
- package/dist/core/subagent-wait-interruption.js.map +1 -0
- package/dist/core/system-prompt.d.ts.map +1 -1
- package/dist/core/system-prompt.js +7 -2
- package/dist/core/system-prompt.js.map +1 -1
- package/dist/core/todo-settings.d.ts +5 -0
- package/dist/core/todo-settings.d.ts.map +1 -0
- package/dist/core/todo-settings.js +7 -0
- package/dist/core/todo-settings.js.map +1 -0
- package/dist/core/tools/bash.d.ts.map +1 -1
- package/dist/core/tools/bash.js +4 -4
- package/dist/core/tools/bash.js.map +1 -1
- package/dist/core/tools/edit.d.ts.map +1 -1
- package/dist/core/tools/edit.js +5 -3
- package/dist/core/tools/edit.js.map +1 -1
- package/dist/core/tools/find.d.ts.map +1 -1
- package/dist/core/tools/find.js +4 -4
- package/dist/core/tools/find.js.map +1 -1
- package/dist/core/tools/grep.d.ts.map +1 -1
- package/dist/core/tools/grep.js +4 -4
- package/dist/core/tools/grep.js.map +1 -1
- package/dist/core/tools/ls.d.ts.map +1 -1
- package/dist/core/tools/ls.js +4 -4
- package/dist/core/tools/ls.js.map +1 -1
- package/dist/core/tools/read.d.ts.map +1 -1
- package/dist/core/tools/read.js +4 -4
- package/dist/core/tools/read.js.map +1 -1
- package/dist/core/tools/render-utils.d.ts +14 -5
- package/dist/core/tools/render-utils.d.ts.map +1 -1
- package/dist/core/tools/render-utils.js +34 -7
- package/dist/core/tools/render-utils.js.map +1 -1
- package/dist/core/tools/write.d.ts.map +1 -1
- package/dist/core/tools/write.js +4 -4
- package/dist/core/tools/write.js.map +1 -1
- package/dist/core/usage-service.d.ts.map +1 -1
- package/dist/core/usage-service.js +5 -3
- package/dist/core/usage-service.js.map +1 -1
- package/dist/gateway/adapters/discord.d.ts +12 -1
- package/dist/gateway/adapters/discord.d.ts.map +1 -1
- package/dist/gateway/adapters/discord.js +112 -17
- package/dist/gateway/adapters/discord.js.map +1 -1
- package/dist/gateway/adapters/telegram.d.ts +4 -2
- package/dist/gateway/adapters/telegram.d.ts.map +1 -1
- package/dist/gateway/adapters/telegram.js +34 -11
- package/dist/gateway/adapters/telegram.js.map +1 -1
- package/dist/gateway/agent-bridge.d.ts +14 -3
- package/dist/gateway/agent-bridge.d.ts.map +1 -1
- package/dist/gateway/agent-bridge.js +252 -60
- package/dist/gateway/agent-bridge.js.map +1 -1
- package/dist/gateway/approval.d.ts +1 -0
- package/dist/gateway/approval.d.ts.map +1 -1
- package/dist/gateway/approval.js +60 -18
- package/dist/gateway/approval.js.map +1 -1
- package/dist/gateway/authz.d.ts +2 -0
- package/dist/gateway/authz.d.ts.map +1 -1
- package/dist/gateway/authz.js +13 -0
- package/dist/gateway/authz.js.map +1 -1
- package/dist/gateway/buttons.d.ts +3 -1
- package/dist/gateway/buttons.d.ts.map +1 -1
- package/dist/gateway/buttons.js +18 -3
- package/dist/gateway/buttons.js.map +1 -1
- package/dist/gateway/command.d.ts.map +1 -1
- package/dist/gateway/command.js +49 -4
- package/dist/gateway/command.js.map +1 -1
- package/dist/gateway/commands.d.ts.map +1 -1
- package/dist/gateway/commands.js +18 -3
- package/dist/gateway/commands.js.map +1 -1
- package/dist/gateway/config.d.ts +5 -0
- package/dist/gateway/config.d.ts.map +1 -1
- package/dist/gateway/config.js +5 -0
- package/dist/gateway/config.js.map +1 -1
- package/dist/gateway/conversations.d.ts +14 -0
- package/dist/gateway/conversations.d.ts.map +1 -0
- package/dist/gateway/conversations.js +30 -0
- package/dist/gateway/conversations.js.map +1 -0
- package/dist/gateway/download.d.ts +2 -0
- package/dist/gateway/download.d.ts.map +1 -0
- package/dist/gateway/download.js +36 -0
- package/dist/gateway/download.js.map +1 -0
- package/dist/gateway/index.d.ts.map +1 -1
- package/dist/gateway/index.js +85 -26
- package/dist/gateway/index.js.map +1 -1
- package/dist/gateway/mobile-commands.d.ts +24 -0
- package/dist/gateway/mobile-commands.d.ts.map +1 -0
- package/dist/gateway/mobile-commands.js +422 -0
- package/dist/gateway/mobile-commands.js.map +1 -0
- package/dist/gateway/presenter.d.ts +16 -0
- package/dist/gateway/presenter.d.ts.map +1 -0
- package/dist/gateway/presenter.js +210 -0
- package/dist/gateway/presenter.js.map +1 -0
- package/dist/gateway/router.d.ts +1 -0
- package/dist/gateway/router.d.ts.map +1 -1
- package/dist/gateway/router.js +32 -3
- package/dist/gateway/router.js.map +1 -1
- package/dist/gateway/service.d.ts +46 -0
- package/dist/gateway/service.d.ts.map +1 -0
- package/dist/gateway/service.js +395 -0
- package/dist/gateway/service.js.map +1 -0
- package/dist/gateway/setup.d.ts +4 -0
- package/dist/gateway/setup.d.ts.map +1 -0
- package/dist/gateway/setup.js +146 -0
- package/dist/gateway/setup.js.map +1 -0
- package/dist/gateway/types.d.ts +4 -2
- package/dist/gateway/types.d.ts.map +1 -1
- package/dist/gateway/types.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +2 -1
- package/dist/main.js.map +1 -1
- package/dist/modes/interactive/components/assistant-message.d.ts +19 -2
- package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/assistant-message.js +78 -17
- package/dist/modes/interactive/components/assistant-message.js.map +1 -1
- package/dist/modes/interactive/components/copyable-text.d.ts +27 -0
- package/dist/modes/interactive/components/copyable-text.d.ts.map +1 -0
- package/dist/modes/interactive/components/copyable-text.js +156 -0
- package/dist/modes/interactive/components/copyable-text.js.map +1 -0
- package/dist/modes/interactive/components/custom-entry.d.ts +1 -0
- package/dist/modes/interactive/components/custom-entry.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-entry.js +8 -0
- package/dist/modes/interactive/components/custom-entry.js.map +1 -1
- package/dist/modes/interactive/components/custom-message.d.ts +1 -0
- package/dist/modes/interactive/components/custom-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-message.js +8 -0
- package/dist/modes/interactive/components/custom-message.js.map +1 -1
- package/dist/modes/interactive/components/session-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/session-selector.js +16 -0
- package/dist/modes/interactive/components/session-selector.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector.d.ts +8 -1
- package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector.js +51 -0
- package/dist/modes/interactive/components/settings-selector.js.map +1 -1
- package/dist/modes/interactive/components/thinking-tail.d.ts +9 -2
- package/dist/modes/interactive/components/thinking-tail.d.ts.map +1 -1
- package/dist/modes/interactive/components/thinking-tail.js +43 -1
- package/dist/modes/interactive/components/thinking-tail.js.map +1 -1
- package/dist/modes/interactive/components/tool-execution.d.ts +4 -3
- package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
- package/dist/modes/interactive/components/tool-execution.js +34 -45
- package/dist/modes/interactive/components/tool-execution.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts +9 -0
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +267 -44
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/dist/modes/interactive/theme/theme.d.ts +1 -0
- package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme.js +23 -0
- package/dist/modes/interactive/theme/theme.js.map +1 -1
- package/dist/node-runtime/agent-session-services-GZVSOGYR.js +49 -0
- package/dist/node-runtime/{builtin-extensions-JCOPAAB5.js → builtin-extensions-QVCXNQT4.js} +6 -5
- package/dist/node-runtime/{chunk-LTYWTR3V.js → chunk-2MI5OPMN.js} +17 -2
- package/dist/node-runtime/{chunk-W3CVH5RX.js → chunk-2TKODGBZ.js} +11 -6
- package/dist/node-runtime/chunk-4EULYYR4.js +62 -0
- package/dist/node-runtime/{chunk-6N22HULO.js → chunk-5D7LC2ZQ.js} +7 -2
- package/dist/node-runtime/{chunk-KBKMCJDU.js → chunk-5ZQXRPMC.js} +19 -4
- package/dist/node-runtime/{chunk-BOHIDQT4.js → chunk-6VYZ5UFP.js} +1 -1
- package/dist/node-runtime/chunk-AZJHNQKQ.js +205 -0
- package/dist/node-runtime/{chunk-A3KMVBZV.js → chunk-BBUVIEZB.js} +1 -10
- package/dist/node-runtime/{chunk-IRPJXI6U.js → chunk-BX2RB477.js} +1 -1
- package/dist/node-runtime/chunk-CCCN2UCX.js +14 -0
- package/dist/node-runtime/{chunk-25I2BHAA.js → chunk-CSUZVNYE.js} +1 -1
- package/dist/node-runtime/chunk-DD5YWFSJ.js +708 -0
- package/dist/node-runtime/chunk-DQMGU675.js +3409 -0
- package/dist/node-runtime/{chunk-QZMODZQ2.js → chunk-E24EO34J.js} +2 -1
- package/dist/node-runtime/chunk-EKVFP6YF.js +355 -0
- package/dist/node-runtime/chunk-GJ2RDBRL.js +672 -0
- package/dist/node-runtime/{chunk-W3SILANP.js → chunk-GMHJCCEN.js} +8 -8
- package/dist/node-runtime/{chunk-DDWHZ633.js → chunk-GS42T6MX.js} +1 -1
- package/dist/node-runtime/chunk-GS66LV4M.js +2830 -0
- package/dist/node-runtime/chunk-H4K3JDRB.js +47 -0
- package/dist/node-runtime/{chunk-2SJB2AWP.js → chunk-HMBGROQK.js} +3 -3
- package/dist/node-runtime/{chunk-GB2MGFLI.js → chunk-HPUP7E4T.js} +216 -201
- package/dist/node-runtime/{chunk-YMEAYRBE.js → chunk-HTFRRDSF.js} +2 -7
- package/dist/node-runtime/{chunk-OPEK5RRY.js → chunk-IF24A3FH.js} +1 -1
- package/dist/node-runtime/chunk-IMLCWLPI.js +9 -0
- package/dist/node-runtime/chunk-KKUTQQV7.js +144 -0
- package/dist/node-runtime/chunk-LFZDVKSP.js +521 -0
- package/dist/node-runtime/{chunk-2BUAYZ7K.js → chunk-LLUIPGDR.js} +581 -197
- package/dist/node-runtime/{chunk-7NBZ5P7I.js → chunk-NAY6UUQZ.js} +1 -1
- package/dist/node-runtime/chunk-OAR4TYZE.js +146 -0
- package/dist/node-runtime/{chunk-STERBGUB.js → chunk-OFKSVRV7.js} +2 -2
- package/dist/node-runtime/{chunk-JZQ7F36T.js → chunk-PCEW76PM.js} +19 -3
- package/dist/node-runtime/{chunk-WLLDXJRT.js → chunk-QAZOULTU.js} +29 -1014
- package/dist/node-runtime/{chunk-6KDIOJL3.js → chunk-QH6YL7VK.js} +3 -3
- package/dist/node-runtime/chunk-R3K2F5GI.js +122 -0
- package/dist/node-runtime/{chunk-RNBHABBA.js → chunk-RDDAZOMU.js} +23 -0
- package/dist/node-runtime/{chunk-SY2TFMLO.js → chunk-RIR5EDDJ.js} +46 -151
- package/dist/node-runtime/chunk-RMQZU2YU.js +117 -0
- package/dist/node-runtime/{chunk-6BEIBLQ3.js → chunk-RWTKOC3B.js} +1 -1
- package/dist/node-runtime/{chunk-G6LRAP36.js → chunk-TQGPP4SC.js} +1 -1
- package/dist/node-runtime/{chunk-Y5KOEMBH.js → chunk-TVJUOJZJ.js} +9 -674
- package/dist/node-runtime/chunk-UAEOTO52.js +119 -0
- package/dist/node-runtime/{chunk-AY6CAJSL.js → chunk-UJOCPOMX.js} +6 -3
- package/dist/node-runtime/chunk-UP2XBVH5.js +40 -0
- package/dist/node-runtime/{chunk-WJVFOIB5.js → chunk-UQUCFAJ3.js} +1 -1
- package/dist/node-runtime/chunk-URD2SLIT.js +1019 -0
- package/dist/node-runtime/chunk-US544NN6.js +13 -0
- package/dist/node-runtime/chunk-UWPJL22I.js +341 -0
- package/dist/node-runtime/{chunk-4I23VTC4.js → chunk-VWCE2HSZ.js} +21 -124
- package/dist/node-runtime/{chunk-VZR3NCM7.js → chunk-W64JC4E7.js} +18 -14
- package/dist/node-runtime/{chunk-AWVD5IEY.js → chunk-X3URCYCU.js} +23 -12
- package/dist/node-runtime/{chunk-GKLEQ3I4.js → chunk-XLTL257W.js} +126 -27
- package/dist/node-runtime/{chunk-WKDK4C5P.js → chunk-YDO2F2IA.js} +38 -164
- package/dist/node-runtime/{chunk-PDNXVXMD.js → chunk-YHQ3NBB3.js} +58 -48
- package/dist/node-runtime/chunk-YPHAIRZT.js +10 -0
- package/dist/node-runtime/cli-runtime.js +2 -2
- package/dist/node-runtime/command-PDVTBRWA.js +45 -0
- package/dist/node-runtime/{commands-MV5KOZ64.js → commands-KAMO2T6P.js} +10 -10
- package/dist/node-runtime/commands-XDCFGIGW.js +36 -0
- package/dist/node-runtime/config-RORQUQFG.js +20 -0
- package/dist/node-runtime/{customize-LF5VST47.js → customize-VFJV3U6A.js} +2 -1
- package/dist/node-runtime/{direct-tool-executor-BK7CLEBX.js → direct-tool-executor-YAVOLDFY.js} +8 -8
- package/dist/node-runtime/{export-html-TEXVV5RP.js → export-html-KSOIMVPI.js} +4 -3
- package/dist/node-runtime/{extension-input-O4HSAEM4.js → extension-input-E7BJZ35H.js} +4 -4
- package/dist/node-runtime/{extension-selector-X5FCX43D.js → extension-selector-WU42XDTU.js} +4 -4
- package/dist/node-runtime/{extract-XLQSJN4V.js → extract-EQJE7FZZ.js} +2 -2
- package/dist/node-runtime/{gateway-BM6NLOH4.js → gateway-AYWM5DIO.js} +275 -994
- package/dist/node-runtime/{gemini-search-U7SUMPQA.js → gemini-search-35OCRFLN.js} +1 -1
- package/dist/node-runtime/{gemini-url-context-PXWCBQHK.js → gemini-url-context-UQY3PHHW.js} +2 -2
- package/dist/node-runtime/index.js +104 -65
- package/dist/node-runtime/{init-3C7Z24OI.js → init-X2LIUB2H.js} +3 -3
- package/dist/node-runtime/{install-cli-EXMJQESX.js → install-cli-3BO4MMQ6.js} +21 -82
- package/dist/node-runtime/interactive-mode-4MFRKAHG.js +72 -0
- package/dist/node-runtime/{interactive-view-ILS6TAN5.js → interactive-view-TUZHCQM3.js} +8 -8
- package/dist/node-runtime/lunr-browser-RYFIIVJN.js +174 -0
- package/dist/node-runtime/{lunr-cron-4VHP4E4B.js → lunr-cron-YWXEPZMQ.js} +19 -5
- package/dist/node-runtime/main.js +44 -31
- package/dist/node-runtime/{memory-cap-3S4XRLNP.js → memory-cap-EL3KL4JJ.js} +2 -1
- package/dist/node-runtime/mobile-commands-LVHDAUDP.js +32 -0
- package/dist/node-runtime/model-runtime-PLQKAG4B.js +16 -0
- package/dist/node-runtime/{model-tiers-NJLHUEGK.js → model-tiers-OU3U5CZG.js} +2 -1
- package/dist/node-runtime/{package-manager-cli-N37546V5.js → package-manager-cli-6GT3Z3CK.js} +22 -15
- package/dist/node-runtime/{pi-intercom-NV2LW6X7.js → pi-intercom-HBPK5HSJ.js} +4 -1
- package/dist/node-runtime/{pi-mcp-adapter-GUFZWW54.js → pi-mcp-adapter-E6WULBKF.js} +4 -4
- package/dist/node-runtime/{pi-subagents-6MUIFNDM.js → pi-subagents-CDWK2AKY.js} +236 -79
- package/dist/node-runtime/{pi-web-access-2CQGFLT2.js → pi-web-access-WTGMNZ32.js} +15 -15
- package/dist/node-runtime/process-registry-4FAKZQOL.js +31 -0
- package/dist/node-runtime/{proxy-modes-V6YVFH3C.js → proxy-modes-OSQCWRBI.js} +9 -9
- package/dist/node-runtime/rpc-entry.js +44 -31
- package/dist/node-runtime/{rpc-mode-W5ZTLTMZ.js → rpc-mode-O3XV4SID.js} +2 -2
- package/dist/node-runtime/runtime-4VA6JKNF.js +373 -0
- package/dist/node-runtime/{runtime-bridges-2VQTLPOZ.js → runtime-bridges-3XUQ46XW.js} +6 -5
- package/dist/node-runtime/service-ISSP6VHE.js +36 -0
- package/dist/node-runtime/session-handoff-HC7R5E24.js +33 -0
- package/dist/node-runtime/{session-manager-E7AREDTV.js → session-manager-CFN4UFM2.js} +2 -1
- package/dist/node-runtime/{session-selector-FJ7M2AIX.js → session-selector-GIM4DHQ2.js} +5 -4
- package/dist/node-runtime/{settings-manager-CUGAZWAB.js → settings-manager-6VEMXRDL.js} +7 -2
- package/dist/node-runtime/setup-5SR2J35A.js +155 -0
- package/dist/node-runtime/setup-JBKOLJ6F.js +18 -0
- package/dist/node-runtime/{subagent-executor-MH4A7CCF.js → subagent-executor-M5VWB3D3.js} +26 -18
- package/dist/node-runtime/theme-UOO5RVFN.js +68 -0
- package/dist/node-runtime/trust-manager-MMISNCYO.js +17 -0
- package/dist/node-runtime/{update-cli-XTZMZGOL.js → update-cli-UVKJWRRJ.js} +7 -2
- package/dist/node-runtime/usage-service-LFB2SWYV.js +37 -0
- package/dist/node-runtime/{video-extract-OYT5WKS5.js → video-extract-OOZHR7SU.js} +2 -2
- package/dist/node-runtime/{youtube-extract-TQYKGFGS.js → youtube-extract-FNPAUNHU.js} +6 -6
- package/docs/browser.md +86 -0
- package/docs/extensions.md +2 -0
- package/docs/features.md +96 -16
- package/docs/interactive-startup.md +2 -1
- package/docs/sessions.md +10 -0
- package/docs/settings.md +2 -0
- package/docs/tui.md +2 -0
- package/docs/usage.md +16 -0
- package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
- package/examples/extensions/custom-provider-anthropic/package.json +1 -1
- package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
- package/examples/extensions/gondolin/package-lock.json +2 -2
- package/examples/extensions/gondolin/package.json +1 -1
- package/examples/extensions/sandbox/package-lock.json +2 -2
- package/examples/extensions/sandbox/package.json +1 -1
- package/examples/extensions/with-deps/package-lock.json +2 -2
- package/examples/extensions/with-deps/package.json +1 -1
- package/package.json +7 -4
- package/scripts/install-browser.mjs +20 -0
- package/dist/node-runtime/agent-session-services-C743TYQE.js +0 -37
- package/dist/node-runtime/chunk-VGYZ3APQ.js +0 -59
- package/dist/node-runtime/chunk-XI77KVKA.js +0 -6009
- package/dist/node-runtime/command-P4NYCJ2M.js +0 -13
- package/dist/node-runtime/interactive-mode-EVVBA64D.js +0 -59
- package/dist/node-runtime/{chunk-UWQYRSYQ.js → chunk-YJMMG7C6.js} +25 -25
- package/dist/node-runtime/{mcp-panel-IIGMXQGP.js → mcp-panel-KTTFXJZ4.js} +3 -3
- package/dist/node-runtime/{src-BPQFJR76.js → src-IVPNZ2BX.js} +9 -9
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
spinners
|
|
4
|
+
} from "./chunk-5ZH3ZFIZ.js";
|
|
5
|
+
|
|
6
|
+
// packages/coding-agent/dist/core/subagent-spinner.js
|
|
7
|
+
function getSubagentSpinnerDefinition(name) {
|
|
8
|
+
return spinners[name];
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export {
|
|
12
|
+
getSubagentSpinnerDefinition
|
|
13
|
+
};
|
|
@@ -0,0 +1,341 @@
|
|
|
1
|
+
import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
getAgentDir
|
|
4
|
+
} from "./chunk-FQMM2EZ2.js";
|
|
5
|
+
|
|
6
|
+
// packages/coding-agent/dist/gateway/service.js
|
|
7
|
+
import { spawn, spawnSync } from "node:child_process";
|
|
8
|
+
import { createHash, randomUUID } from "node:crypto";
|
|
9
|
+
import { existsSync, mkdirSync, readFileSync, renameSync, rmSync, writeFileSync } from "node:fs";
|
|
10
|
+
import { homedir, userInfo } from "node:os";
|
|
11
|
+
import { dirname, join, resolve } from "node:path";
|
|
12
|
+
import { fileURLToPath } from "node:url";
|
|
13
|
+
var servicePrefix = "lunr-gateway", serviceDirectory = () => join(getAgentDir(), "gateway-service"), gatewayLogPath = () => join(serviceDirectory(), "gateway.log"), statusPath = () => join(serviceDirectory(), "status.json"), controlPath = () => join(serviceDirectory(), "control.json"), settingsPath = () => join(serviceDirectory(), "service.json");
|
|
14
|
+
function atomicJson(path, value) {
|
|
15
|
+
mkdirSync(dirname(path), { recursive: !0, mode: 448 });
|
|
16
|
+
let temp = `${path}.${randomUUID()}.tmp`;
|
|
17
|
+
writeFileSync(temp, `${JSON.stringify(value, null, 2)}
|
|
18
|
+
`, { mode: 384 }), renameSync(temp, path);
|
|
19
|
+
}
|
|
20
|
+
function readJson(path) {
|
|
21
|
+
try {
|
|
22
|
+
return JSON.parse(readFileSync(path, "utf8"));
|
|
23
|
+
} catch {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
function loadServiceSettings() {
|
|
28
|
+
let raw = readJson(settingsPath());
|
|
29
|
+
return raw && typeof raw == "object" && "startup" in raw && (raw.startup === "login" || raw.startup === "boot") ? { startup: raw.startup } : { startup: "off" };
|
|
30
|
+
}
|
|
31
|
+
function processExists(pid) {
|
|
32
|
+
if (!Number.isSafeInteger(pid) || pid <= 0)
|
|
33
|
+
return !1;
|
|
34
|
+
try {
|
|
35
|
+
return process.kill(pid, 0), !0;
|
|
36
|
+
} catch (error) {
|
|
37
|
+
return !(error && typeof error == "object" && "code" in error && error.code === "ESRCH");
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
function readGatewayStatus(file = statusPath()) {
|
|
41
|
+
let raw = readJson(file);
|
|
42
|
+
if (!(!raw || typeof raw != "object" || !("version" in raw) || raw.version !== 1 || !("pid" in raw) || typeof raw.pid != "number") && !(!("instance" in raw) || typeof raw.instance != "string" || !("updatedAt" in raw) || typeof raw.updatedAt != "string") && !(!("state" in raw) || !["starting", "ready", "stopping"].includes(String(raw.state))) && !(!("platforms" in raw) || !raw.platforms || typeof raw.platforms != "object" || !("startedAt" in raw) || typeof raw.startedAt != "string"))
|
|
43
|
+
return raw;
|
|
44
|
+
}
|
|
45
|
+
function gatewayIsRunning() {
|
|
46
|
+
let status = readGatewayStatus();
|
|
47
|
+
return !!status && processExists(status.pid);
|
|
48
|
+
}
|
|
49
|
+
function claimGateway(onStop) {
|
|
50
|
+
let dir = serviceDirectory();
|
|
51
|
+
mkdirSync(dir, { recursive: !0, mode: 448 });
|
|
52
|
+
let lock = join(dir, "lock");
|
|
53
|
+
try {
|
|
54
|
+
mkdirSync(lock);
|
|
55
|
+
} catch (error) {
|
|
56
|
+
if (!error || typeof error != "object" || !("code" in error) || error.code !== "EEXIST")
|
|
57
|
+
throw error;
|
|
58
|
+
let previous = readGatewayStatus(join(lock, "owner.json"));
|
|
59
|
+
if (!previous || processExists(previous.pid))
|
|
60
|
+
throw new Error("Gateway already running or startup lock is unresolved. Run lunr gateway doctor.");
|
|
61
|
+
let recovery = join(dir, "recovery");
|
|
62
|
+
mkdirSync(recovery);
|
|
63
|
+
try {
|
|
64
|
+
let current = readGatewayStatus(join(lock, "owner.json"));
|
|
65
|
+
if (!current || current.instance !== previous.instance || processExists(current.pid))
|
|
66
|
+
throw new Error("Gateway ownership changed. Try again.");
|
|
67
|
+
rmSync(lock, { recursive: !0 }), mkdirSync(lock);
|
|
68
|
+
} finally {
|
|
69
|
+
rmSync(recovery, { recursive: !0, force: !0 });
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
let status = {
|
|
73
|
+
version: 1,
|
|
74
|
+
instance: randomUUID(),
|
|
75
|
+
pid: process.pid,
|
|
76
|
+
startedAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
77
|
+
updatedAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
78
|
+
state: "starting",
|
|
79
|
+
platforms: {}
|
|
80
|
+
};
|
|
81
|
+
atomicJson(join(lock, "owner.json"), status);
|
|
82
|
+
let save = () => {
|
|
83
|
+
status.updatedAt = (/* @__PURE__ */ new Date()).toISOString(), atomicJson(statusPath(), status);
|
|
84
|
+
};
|
|
85
|
+
save();
|
|
86
|
+
let stopping = !1, timer = setInterval(() => {
|
|
87
|
+
save();
|
|
88
|
+
let control = readJson(controlPath());
|
|
89
|
+
!stopping && control && typeof control == "object" && "instance" in control && control.instance === status.instance && "action" in control && control.action === "stop" && (stopping = !0, status.state = "stopping", onStop());
|
|
90
|
+
}, 500);
|
|
91
|
+
return {
|
|
92
|
+
update(platforms, state = "ready") {
|
|
93
|
+
status.platforms = { ...platforms }, status.state = state, save();
|
|
94
|
+
},
|
|
95
|
+
release() {
|
|
96
|
+
clearInterval(timer), readGatewayStatus()?.instance === status.instance && (rmSync(statusPath(), { force: !0 }), rmSync(controlPath(), { force: !0 }), rmSync(lock, { recursive: !0, force: !0 }));
|
|
97
|
+
}
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
function cliPath() {
|
|
101
|
+
let candidate = process.argv[1];
|
|
102
|
+
return candidate && existsSync(candidate) ? resolve(candidate) : fileURLToPath(new URL("../cli.js", new URL("../gateway/service.js", import.meta.url).href));
|
|
103
|
+
}
|
|
104
|
+
var sleep = (ms) => new Promise((resolve2) => setTimeout(resolve2, ms));
|
|
105
|
+
async function startGatewayService() {
|
|
106
|
+
if (gatewayIsRunning())
|
|
107
|
+
return "Gateway is already running.";
|
|
108
|
+
mkdirSync(serviceDirectory(), { recursive: !0, mode: 448 });
|
|
109
|
+
let startup = loadServiceSettings().startup;
|
|
110
|
+
if (startup !== "off") {
|
|
111
|
+
let user = userInfo(), spec = startupSpec(process.platform, startup, {
|
|
112
|
+
home: homedir(),
|
|
113
|
+
agentDir: getAgentDir(),
|
|
114
|
+
node: process.execPath,
|
|
115
|
+
cli: cliPath(),
|
|
116
|
+
username: user.username,
|
|
117
|
+
uid: user.uid
|
|
118
|
+
});
|
|
119
|
+
execute(spec.start);
|
|
120
|
+
for (let i = 0; i < 100; i++) {
|
|
121
|
+
if (readGatewayStatus()?.state === "ready" && gatewayIsRunning())
|
|
122
|
+
return "Gateway started.";
|
|
123
|
+
await sleep(200);
|
|
124
|
+
}
|
|
125
|
+
throw new Error(`Startup service did not become ready. Run lunr gateway doctor and inspect ${gatewayLogPath()}`);
|
|
126
|
+
}
|
|
127
|
+
let { openSync, closeSync } = await import("node:fs"), log = openSync(gatewayLogPath(), "a", 384), child = spawn(process.execPath, [cliPath(), "gateway", "run"], {
|
|
128
|
+
cwd: homedir(),
|
|
129
|
+
detached: !0,
|
|
130
|
+
windowsHide: !0,
|
|
131
|
+
stdio: ["ignore", log, log],
|
|
132
|
+
env: { ...process.env, PI_CODING_AGENT_DIR: getAgentDir() }
|
|
133
|
+
});
|
|
134
|
+
closeSync(log);
|
|
135
|
+
let spawnError;
|
|
136
|
+
child.on("error", (error) => {
|
|
137
|
+
spawnError = error;
|
|
138
|
+
}), child.unref();
|
|
139
|
+
for (let i = 0; i < 100; i++) {
|
|
140
|
+
if (spawnError)
|
|
141
|
+
throw spawnError;
|
|
142
|
+
let status = readGatewayStatus();
|
|
143
|
+
if (status && status.pid === child.pid && status.state === "ready")
|
|
144
|
+
return "Gateway started.";
|
|
145
|
+
if (child.exitCode !== null)
|
|
146
|
+
throw new Error(`Gateway exited with code ${child.exitCode}. See ${gatewayLogPath()}`);
|
|
147
|
+
await sleep(200);
|
|
148
|
+
}
|
|
149
|
+
throw new Error(`Gateway did not become ready within 20 seconds. Check lunr gateway status and ${gatewayLogPath()}`);
|
|
150
|
+
}
|
|
151
|
+
async function stopGatewayService() {
|
|
152
|
+
let status = readGatewayStatus();
|
|
153
|
+
if (!status || !processExists(status.pid))
|
|
154
|
+
return "Gateway is not running.";
|
|
155
|
+
atomicJson(controlPath(), { instance: status.instance, action: "stop" });
|
|
156
|
+
for (let i = 0; i < 150; i++) {
|
|
157
|
+
if (readGatewayStatus()?.instance !== status.instance || !processExists(status.pid))
|
|
158
|
+
return "Gateway stopped.";
|
|
159
|
+
await sleep(200);
|
|
160
|
+
}
|
|
161
|
+
throw new Error("Gateway is still stopping after 30 seconds. Inspect the log; no unrelated process was terminated.");
|
|
162
|
+
}
|
|
163
|
+
function xml(value) {
|
|
164
|
+
return value.replaceAll("&", "&").replaceAll("<", "<").replaceAll(">", ">").replaceAll('"', """);
|
|
165
|
+
}
|
|
166
|
+
function systemdArg(value) {
|
|
167
|
+
return `"${value.replaceAll("%", "%%").replaceAll("\\", "\\\\").replaceAll('"', '\\"')}"`;
|
|
168
|
+
}
|
|
169
|
+
function ps(value) {
|
|
170
|
+
return `'${value.replaceAll("'", "''")}'`;
|
|
171
|
+
}
|
|
172
|
+
function startupSpec(platform, mode, options) {
|
|
173
|
+
let { home, agentDir, node, cli, username, uid } = options;
|
|
174
|
+
if ([home, agentDir, node, cli, username].some((value) => /[\r\n\0]/.test(value)))
|
|
175
|
+
throw new Error("Startup paths and account names must not contain control characters.");
|
|
176
|
+
let suffix = createHash("sha256").update(resolve(agentDir)).digest("hex").slice(0, 10), serviceName = `${servicePrefix}-${suffix}`, log = join(agentDir, "gateway-service", "gateway.log");
|
|
177
|
+
if (platform === "linux")
|
|
178
|
+
return {
|
|
179
|
+
path: join(home, ".config", "systemd", "user", `${serviceName}.service`),
|
|
180
|
+
content: `[Unit]
|
|
181
|
+
Description=lunR chat gateway
|
|
182
|
+
After=network-online.target
|
|
183
|
+
|
|
184
|
+
[Service]
|
|
185
|
+
Type=simple
|
|
186
|
+
ExecStart=${systemdArg(node)} ${systemdArg(cli)} gateway run
|
|
187
|
+
WorkingDirectory=${systemdArg(home)}
|
|
188
|
+
Environment=${systemdArg(`PI_CODING_AGENT_DIR=${agentDir}`)}
|
|
189
|
+
Restart=on-failure
|
|
190
|
+
RestartSec=5
|
|
191
|
+
TimeoutStopSec=30
|
|
192
|
+
StandardOutput=append:${log.replaceAll("%", "%%")}
|
|
193
|
+
StandardError=append:${log.replaceAll("%", "%%")}
|
|
194
|
+
UMask=0077
|
|
195
|
+
|
|
196
|
+
[Install]
|
|
197
|
+
WantedBy=default.target
|
|
198
|
+
`,
|
|
199
|
+
install: [
|
|
200
|
+
...mode === "boot" ? [["loginctl", "enable-linger", username]] : [],
|
|
201
|
+
["systemctl", "--user", "daemon-reload"],
|
|
202
|
+
["systemctl", "--user", "enable", `${serviceName}.service`]
|
|
203
|
+
],
|
|
204
|
+
remove: [["systemctl", "--user", "disable", `${serviceName}.service`]],
|
|
205
|
+
verify: ["systemctl", "--user", "is-enabled", `${serviceName}.service`],
|
|
206
|
+
start: ["systemctl", "--user", "start", `${serviceName}.service`]
|
|
207
|
+
};
|
|
208
|
+
if (platform === "darwin") {
|
|
209
|
+
let label = `dev.lunr.gateway.${suffix}`, path = mode === "boot" ? `/Library/LaunchDaemons/${label}.plist` : join(home, "Library", "LaunchAgents", `${label}.plist`), domain = mode === "boot" ? "system" : `gui/${uid}`, command = (args) => mode === "boot" ? ["sudo", "launchctl", ...args] : ["launchctl", ...args];
|
|
210
|
+
return {
|
|
211
|
+
path,
|
|
212
|
+
content: `<?xml version="1.0" encoding="UTF-8"?>
|
|
213
|
+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
214
|
+
<plist version="1.0"><dict><key>Label</key><string>${label}</string><key>ProgramArguments</key><array>${[node, cli, "gateway", "run"].map((v) => `<string>${xml(v)}</string>`).join("")}</array><key>WorkingDirectory</key><string>${xml(home)}</string>${mode === "boot" ? `<key>UserName</key><string>${xml(username)}</string>` : ""}<key>EnvironmentVariables</key><dict><key>PI_CODING_AGENT_DIR</key><string>${xml(agentDir)}</string><key>HOME</key><string>${xml(home)}</string></dict><key>RunAtLoad</key><true/><key>KeepAlive</key><dict><key>SuccessfulExit</key><false/></dict><key>StandardOutPath</key><string>${xml(log)}</string><key>StandardErrorPath</key><string>${xml(log)}</string></dict></plist>
|
|
215
|
+
`,
|
|
216
|
+
install: [command(["bootstrap", domain, path])],
|
|
217
|
+
remove: [command(["bootout", `${domain}/${label}`])],
|
|
218
|
+
verify: command(["print", `${domain}/${label}`]),
|
|
219
|
+
start: command(["kickstart", `${domain}/${label}`])
|
|
220
|
+
};
|
|
221
|
+
}
|
|
222
|
+
if (platform === "win32") {
|
|
223
|
+
let path = join(agentDir, "gateway-service", "startup.ps1"), content = `$env:PI_CODING_AGENT_DIR = ${ps(agentDir)}
|
|
224
|
+
Set-Location -LiteralPath ${ps(home)}
|
|
225
|
+
& ${ps(node)} ${ps(cli)} gateway run *>> ${ps(log)}
|
|
226
|
+
exit $LASTEXITCODE
|
|
227
|
+
`, action = `New-ScheduledTaskAction -Execute 'powershell.exe' -Argument ${ps(`-NoProfile -NonInteractive -WindowStyle Hidden -ExecutionPolicy Bypass -File "${path}"`)}`, trigger = mode === "boot" ? "New-ScheduledTaskTrigger -AtStartup" : `New-ScheduledTaskTrigger -AtLogOn -User ${ps(username)}`, register = `$ErrorActionPreference='Stop'; $a=${action}; $t=${trigger}; $s=New-ScheduledTaskSettingsSet -RestartCount 3 -RestartInterval (New-TimeSpan -Minutes 1) -ExecutionTimeLimit ([TimeSpan]::Zero) -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries; ${mode === "boot" ? `$c=Get-Credential -UserName ${ps(username)} -Message 'Windows needs your account credentials to run lunR before login'; if(!$c){throw 'Cancelled'}; Register-ScheduledTask -TaskName '${serviceName}' -Action $a -Trigger $t -Settings $s -User $c.UserName -Password $c.GetNetworkCredential().Password -Force | Out-Null` : `Register-ScheduledTask -TaskName '${serviceName}' -Action $a -Trigger $t -Settings $s -User ${ps(username)} -Force | Out-Null`}`, command = (script) => ["powershell.exe", "-NoProfile", "-Command", script];
|
|
228
|
+
return {
|
|
229
|
+
path,
|
|
230
|
+
content,
|
|
231
|
+
install: [command(register)],
|
|
232
|
+
remove: [
|
|
233
|
+
command(`$ErrorActionPreference='Stop'; Unregister-ScheduledTask -TaskName '${serviceName}' -Confirm:$false`)
|
|
234
|
+
],
|
|
235
|
+
verify: command(`$ErrorActionPreference='Stop'; Get-ScheduledTask -TaskName '${serviceName}' | Out-Null`),
|
|
236
|
+
start: command(`$ErrorActionPreference='Stop'; Start-ScheduledTask -TaskName '${serviceName}'`)
|
|
237
|
+
};
|
|
238
|
+
}
|
|
239
|
+
throw new Error(`Automatic startup is not supported on ${platform}. Run lunr gateway start manually.`);
|
|
240
|
+
}
|
|
241
|
+
function execute(command) {
|
|
242
|
+
let [file, ...args] = command, result = spawnSync(file, args, { stdio: "inherit", windowsHide: !0, timeout: 12e4 });
|
|
243
|
+
if (result.error)
|
|
244
|
+
throw result.error;
|
|
245
|
+
if (result.status !== 0)
|
|
246
|
+
throw new Error(`${file} failed. Check OS permissions and run lunr gateway doctor.`);
|
|
247
|
+
}
|
|
248
|
+
async function configureStartup(mode) {
|
|
249
|
+
let previous = loadServiceSettings().startup;
|
|
250
|
+
if (process.platform === "linux" && mode === "login" && spawnSync("loginctl", ["show-user", userInfo().username, "--property=Linger", "--value"], {
|
|
251
|
+
encoding: "utf8",
|
|
252
|
+
timeout: 1e4
|
|
253
|
+
}).stdout?.trim() === "yes")
|
|
254
|
+
throw new Error("Linux user services already start at boot because lingering is enabled. Choose boot, or disable lingering yourself before choosing login. lunR will not change other user services.");
|
|
255
|
+
let user = userInfo(), options = {
|
|
256
|
+
home: homedir(),
|
|
257
|
+
agentDir: getAgentDir(),
|
|
258
|
+
node: process.execPath,
|
|
259
|
+
cli: cliPath(),
|
|
260
|
+
username: user.username,
|
|
261
|
+
uid: user.uid
|
|
262
|
+
};
|
|
263
|
+
if (previous !== "off") {
|
|
264
|
+
let old = startupSpec(process.platform, previous, options);
|
|
265
|
+
for (let command of old.remove)
|
|
266
|
+
execute(command);
|
|
267
|
+
process.platform === "darwin" && previous === "boot" ? execute(["sudo", "rm", "-f", old.path]) : rmSync(old.path, { force: !0 }), atomicJson(settingsPath(), { startup: "off" });
|
|
268
|
+
}
|
|
269
|
+
if (mode === "off") {
|
|
270
|
+
atomicJson(settingsPath(), { startup: "off" });
|
|
271
|
+
return;
|
|
272
|
+
}
|
|
273
|
+
let spec = startupSpec(process.platform, mode, options);
|
|
274
|
+
if (mkdirSync(serviceDirectory(), { recursive: !0, mode: 448 }), process.platform === "darwin" && mode === "boot") {
|
|
275
|
+
let temporary = join(serviceDirectory(), "install.plist");
|
|
276
|
+
writeFileSync(temporary, spec.content, { mode: 384 });
|
|
277
|
+
try {
|
|
278
|
+
execute(["sudo", "install", "-o", "root", "-g", "wheel", "-m", "644", temporary, spec.path]);
|
|
279
|
+
} finally {
|
|
280
|
+
rmSync(temporary, { force: !0 });
|
|
281
|
+
}
|
|
282
|
+
} else
|
|
283
|
+
mkdirSync(dirname(spec.path), { recursive: !0, mode: 448 }), writeFileSync(spec.path, spec.content, { mode: 384 });
|
|
284
|
+
for (let command of spec.install)
|
|
285
|
+
execute(command);
|
|
286
|
+
execute(spec.verify), atomicJson(settingsPath(), { startup: mode });
|
|
287
|
+
}
|
|
288
|
+
function startupVerification() {
|
|
289
|
+
let mode = loadServiceSettings().startup;
|
|
290
|
+
if (mode === "off")
|
|
291
|
+
return "";
|
|
292
|
+
try {
|
|
293
|
+
let user = userInfo(), spec = startupSpec(process.platform, mode, {
|
|
294
|
+
home: homedir(),
|
|
295
|
+
agentDir: getAgentDir(),
|
|
296
|
+
node: process.execPath,
|
|
297
|
+
cli: cliPath(),
|
|
298
|
+
username: user.username,
|
|
299
|
+
uid: user.uid
|
|
300
|
+
}), [command, ...args] = spec.verify[0] === "sudo" ? spec.verify.slice(1) : spec.verify;
|
|
301
|
+
return spawnSync(command, args, { encoding: "utf8", windowsHide: !0, timeout: 5e3 }).status === 0 ? " (native service verified)" : " (native service missing or unavailable)";
|
|
302
|
+
} catch {
|
|
303
|
+
return " (native service could not be checked)";
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
function serviceStatusText() {
|
|
307
|
+
let status = readGatewayStatus(), alive = !!status && processExists(status.pid), fresh = !!status && Date.now() - Date.parse(status.updatedAt) < 5e3;
|
|
308
|
+
return [
|
|
309
|
+
`Gateway: ${alive ? `${status.state}${fresh ? "" : " (not responding)"}` : "stopped"}`,
|
|
310
|
+
`Automatic startup: ${loadServiceSettings().startup}${startupVerification()}`,
|
|
311
|
+
...alive ? [`PID: ${status.pid}`, ...Object.entries(status.platforms).map(([name, state]) => `${name}: ${state}`)] : [],
|
|
312
|
+
`Log: ${gatewayLogPath()}`
|
|
313
|
+
].join(`
|
|
314
|
+
`);
|
|
315
|
+
}
|
|
316
|
+
function readGatewayLog() {
|
|
317
|
+
try {
|
|
318
|
+
return readFileSync(gatewayLogPath(), "utf8").split(`
|
|
319
|
+
`).slice(-100).join(`
|
|
320
|
+
`).replace(/bot\d+:[A-Za-z0-9_-]+/g, "bot[redacted]");
|
|
321
|
+
} catch {
|
|
322
|
+
return "No gateway log yet.";
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
|
|
326
|
+
export {
|
|
327
|
+
serviceDirectory,
|
|
328
|
+
gatewayLogPath,
|
|
329
|
+
atomicJson,
|
|
330
|
+
loadServiceSettings,
|
|
331
|
+
processExists,
|
|
332
|
+
readGatewayStatus,
|
|
333
|
+
gatewayIsRunning,
|
|
334
|
+
claimGateway,
|
|
335
|
+
startGatewayService,
|
|
336
|
+
stopGatewayService,
|
|
337
|
+
startupSpec,
|
|
338
|
+
configureStartup,
|
|
339
|
+
serviceStatusText,
|
|
340
|
+
readGatewayLog
|
|
341
|
+
};
|
|
@@ -1,118 +1,17 @@
|
|
|
1
1
|
import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
loadGatewayConfig,
|
|
4
|
+
saveGatewayConfig
|
|
5
|
+
} from "./chunk-R3K2F5GI.js";
|
|
2
6
|
import {
|
|
3
7
|
VERSION,
|
|
4
8
|
appendDebugLog,
|
|
5
9
|
getAgentDir
|
|
6
10
|
} from "./chunk-FQMM2EZ2.js";
|
|
7
11
|
|
|
8
|
-
// packages/coding-agent/dist/
|
|
12
|
+
// packages/coding-agent/dist/core/install-features.js
|
|
9
13
|
import { chmodSync, existsSync, mkdirSync, readFileSync, renameSync, writeFileSync } from "node:fs";
|
|
10
14
|
import { join } from "node:path";
|
|
11
|
-
function gatewayConfigPath() {
|
|
12
|
-
return join(getAgentDir(), "gateway.json");
|
|
13
|
-
}
|
|
14
|
-
function defaultPlatformConfig(requireMention) {
|
|
15
|
-
return {
|
|
16
|
-
enabled: !1,
|
|
17
|
-
allowedUsers: [],
|
|
18
|
-
allowedChats: [],
|
|
19
|
-
requireMention,
|
|
20
|
-
freeResponseChats: []
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
|
-
function defaultGatewayConfig() {
|
|
24
|
-
return {
|
|
25
|
-
telegram: defaultPlatformConfig(!1),
|
|
26
|
-
discord: { ...defaultPlatformConfig(!0), ignoredChannels: [], autoThread: !0 },
|
|
27
|
-
groupSessionsPerUser: !0,
|
|
28
|
-
unauthorizedDmBehavior: "pair",
|
|
29
|
-
streaming: { enabled: !0, editIntervalMs: 800, bufferThreshold: 24 }
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
function asStringArray(value) {
|
|
33
|
-
if (Array.isArray(value))
|
|
34
|
-
return value.every((v) => typeof v == "string") ? value : void 0;
|
|
35
|
-
}
|
|
36
|
-
function asBoolean(value) {
|
|
37
|
-
return typeof value == "boolean" ? value : void 0;
|
|
38
|
-
}
|
|
39
|
-
function asNumber(value) {
|
|
40
|
-
return typeof value == "number" && Number.isFinite(value) ? value : void 0;
|
|
41
|
-
}
|
|
42
|
-
function sanitizePlatform(raw, base) {
|
|
43
|
-
if (raw == null || typeof raw != "object" || Array.isArray(raw))
|
|
44
|
-
return base;
|
|
45
|
-
let r = raw;
|
|
46
|
-
return {
|
|
47
|
-
enabled: asBoolean(r.enabled) ?? base.enabled,
|
|
48
|
-
token: typeof r.token == "string" ? r.token : base.token,
|
|
49
|
-
allowedUsers: asStringArray(r.allowedUsers) ?? base.allowedUsers,
|
|
50
|
-
allowedChats: asStringArray(r.allowedChats) ?? base.allowedChats,
|
|
51
|
-
requireMention: asBoolean(r.requireMention) ?? base.requireMention,
|
|
52
|
-
freeResponseChats: asStringArray(r.freeResponseChats) ?? base.freeResponseChats,
|
|
53
|
-
homeChannel: typeof r.homeChannel == "string" ? r.homeChannel : base.homeChannel
|
|
54
|
-
};
|
|
55
|
-
}
|
|
56
|
-
function sanitizeDiscord(raw, base) {
|
|
57
|
-
let platform = sanitizePlatform(raw, base), r = raw != null && typeof raw == "object" && !Array.isArray(raw) ? raw : {};
|
|
58
|
-
return {
|
|
59
|
-
...platform,
|
|
60
|
-
ignoredChannels: asStringArray(r.ignoredChannels) ?? base.ignoredChannels,
|
|
61
|
-
autoThread: asBoolean(r.autoThread) ?? base.autoThread
|
|
62
|
-
};
|
|
63
|
-
}
|
|
64
|
-
function sanitizeConfig(raw) {
|
|
65
|
-
let base = defaultGatewayConfig();
|
|
66
|
-
if (raw == null || typeof raw != "object" || Array.isArray(raw))
|
|
67
|
-
return base;
|
|
68
|
-
let r = raw, streamingRaw = r.streaming != null && typeof r.streaming == "object" && !Array.isArray(r.streaming) ? r.streaming : {};
|
|
69
|
-
return {
|
|
70
|
-
telegram: sanitizePlatform(r.telegram, base.telegram),
|
|
71
|
-
discord: sanitizeDiscord(r.discord, base.discord),
|
|
72
|
-
groupSessionsPerUser: asBoolean(r.groupSessionsPerUser) ?? base.groupSessionsPerUser,
|
|
73
|
-
unauthorizedDmBehavior: r.unauthorizedDmBehavior === "ignore" ? "ignore" : "pair",
|
|
74
|
-
streaming: {
|
|
75
|
-
enabled: asBoolean(streamingRaw.enabled) ?? base.streaming.enabled,
|
|
76
|
-
editIntervalMs: asNumber(streamingRaw.editIntervalMs) ?? base.streaming.editIntervalMs,
|
|
77
|
-
bufferThreshold: asNumber(streamingRaw.bufferThreshold) ?? base.streaming.bufferThreshold
|
|
78
|
-
}
|
|
79
|
-
};
|
|
80
|
-
}
|
|
81
|
-
function loadGatewayConfig() {
|
|
82
|
-
let path = gatewayConfigPath();
|
|
83
|
-
if (!existsSync(path))
|
|
84
|
-
return defaultGatewayConfig();
|
|
85
|
-
try {
|
|
86
|
-
return sanitizeConfig(JSON.parse(readFileSync(path, "utf-8")));
|
|
87
|
-
} catch (err) {
|
|
88
|
-
return console.error(`[gateway] Failed to load config from ${path}: ${err}`), defaultGatewayConfig();
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
function saveGatewayConfig(config) {
|
|
92
|
-
let path = gatewayConfigPath(), dir = getAgentDir();
|
|
93
|
-
existsSync(dir) || mkdirSync(dir, { recursive: !0 });
|
|
94
|
-
let tmp = `${path}.tmp-${process.pid}`;
|
|
95
|
-
writeFileSync(tmp, `${JSON.stringify(config, null, 2)}
|
|
96
|
-
`, "utf-8"), renameSync(tmp, path);
|
|
97
|
-
try {
|
|
98
|
-
chmodSync(path, 384);
|
|
99
|
-
} catch {
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
function resolvePlatformToken(platform, platformCfg) {
|
|
103
|
-
let upper = platform.toUpperCase();
|
|
104
|
-
return process.env[`LUNR_${upper}_BOT_TOKEN`] ?? process.env[`${upper}_BOT_TOKEN`] ?? platformCfg.token;
|
|
105
|
-
}
|
|
106
|
-
function platformConfigFor(cfg, platform) {
|
|
107
|
-
if (platform === "telegram")
|
|
108
|
-
return cfg.telegram;
|
|
109
|
-
if (platform === "discord")
|
|
110
|
-
return cfg.discord;
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
// packages/coding-agent/dist/core/install-features.js
|
|
114
|
-
import { chmodSync as chmodSync2, existsSync as existsSync2, mkdirSync as mkdirSync2, readFileSync as readFileSync2, renameSync as renameSync2, writeFileSync as writeFileSync2 } from "node:fs";
|
|
115
|
-
import { join as join2 } from "node:path";
|
|
116
15
|
var FEATURE_CATALOG = [
|
|
117
16
|
{
|
|
118
17
|
id: "chat-platforms",
|
|
@@ -143,7 +42,7 @@ var FEATURE_CATALOG = [
|
|
|
143
42
|
}
|
|
144
43
|
], CHAT_PLATFORMS_INFER_UNTIL = "0.2.0";
|
|
145
44
|
function installFeaturesPath() {
|
|
146
|
-
return
|
|
45
|
+
return join(getAgentDir(), "install-features.json");
|
|
147
46
|
}
|
|
148
47
|
function getFeatureSpec(id) {
|
|
149
48
|
return FEATURE_CATALOG.find((f) => f.id === id);
|
|
@@ -229,22 +128,22 @@ function inferFromGateway() {
|
|
|
229
128
|
}
|
|
230
129
|
function loadInstallFeatures() {
|
|
231
130
|
let path = installFeaturesPath();
|
|
232
|
-
if (!
|
|
131
|
+
if (!existsSync(path))
|
|
233
132
|
return inferFromGateway() ?? emptyFile();
|
|
234
133
|
try {
|
|
235
|
-
return sanitizeFile(JSON.parse(
|
|
134
|
+
return sanitizeFile(JSON.parse(readFileSync(path, "utf-8"))) ?? inferFromGateway() ?? emptyFile();
|
|
236
135
|
} catch {
|
|
237
136
|
return inferFromGateway() ?? emptyFile();
|
|
238
137
|
}
|
|
239
138
|
}
|
|
240
139
|
function saveInstallFeatures(file) {
|
|
241
140
|
let path = installFeaturesPath(), dir = getAgentDir();
|
|
242
|
-
|
|
141
|
+
existsSync(dir) || mkdirSync(dir, { recursive: !0 });
|
|
243
142
|
let tmp = `${path}.tmp-${process.pid}`;
|
|
244
|
-
|
|
245
|
-
`, "utf-8"),
|
|
143
|
+
writeFileSync(tmp, `${JSON.stringify(file, null, 2)}
|
|
144
|
+
`, "utf-8"), renameSync(tmp, path);
|
|
246
145
|
try {
|
|
247
|
-
|
|
146
|
+
chmodSync(path, 420);
|
|
248
147
|
} catch {
|
|
249
148
|
}
|
|
250
149
|
}
|
|
@@ -373,11 +272,14 @@ var chatPlatformsHandler = {
|
|
|
373
272
|
persistEnvAndSecretTokens(ctx.secrets);
|
|
374
273
|
let cfg = loadGatewayConfig();
|
|
375
274
|
if (cfg.telegram.token && (cfg.telegram.enabled = !0), cfg.discord.token && (cfg.discord.enabled = !0), saveGatewayConfig(cfg), ctx.next.options.autostart === !0) {
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
275
|
+
if (!cfg.telegram.token && !cfg.discord.token)
|
|
276
|
+
throw new Error("Configure a bot token with lunr gateway setup before enabling automatic startup.");
|
|
277
|
+
await (await import("./service-ISSP6VHE.js")).configureStartup("login");
|
|
278
|
+
} else ctx.previous?.options.autostart === !0 && await (await import("./service-ISSP6VHE.js")).configureStartup("off");
|
|
379
279
|
},
|
|
380
280
|
async disable(opts) {
|
|
281
|
+
let service = await import("./service-ISSP6VHE.js");
|
|
282
|
+
service.loadServiceSettings().startup !== "off" && await service.configureStartup("off"), await service.stopGatewayService();
|
|
381
283
|
let cfg = loadGatewayConfig();
|
|
382
284
|
cfg.telegram.enabled = !1, cfg.discord.enabled = !1, opts.purgeSecrets && (delete cfg.telegram.token, delete cfg.discord.token), saveGatewayConfig(cfg);
|
|
383
285
|
}
|
|
@@ -387,9 +289,9 @@ var chatPlatformsHandler = {
|
|
|
387
289
|
function appendInstallLog(line) {
|
|
388
290
|
try {
|
|
389
291
|
let dir = getAgentDir();
|
|
390
|
-
|
|
391
|
-
let path =
|
|
392
|
-
|
|
292
|
+
existsSync(dir) || mkdirSync(dir, { recursive: !0 });
|
|
293
|
+
let path = join(dir, "install.log");
|
|
294
|
+
writeFileSync(path, `${(/* @__PURE__ */ new Date()).toISOString()} ${line}
|
|
393
295
|
`, { encoding: "utf-8", flag: "a" });
|
|
394
296
|
} catch {
|
|
395
297
|
}
|
|
@@ -409,11 +311,6 @@ function chatPlatformDeliverBlockedMessage() {
|
|
|
409
311
|
}
|
|
410
312
|
|
|
411
313
|
export {
|
|
412
|
-
gatewayConfigPath,
|
|
413
|
-
loadGatewayConfig,
|
|
414
|
-
saveGatewayConfig,
|
|
415
|
-
resolvePlatformToken,
|
|
416
|
-
platformConfigFor,
|
|
417
314
|
FEATURE_CATALOG,
|
|
418
315
|
getFeatureSpec,
|
|
419
316
|
loadInstallFeatures,
|
|
@@ -1,32 +1,36 @@
|
|
|
1
1
|
import { createRequire as __lunrRequire } from "node:module"; const require = __lunrRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
|
-
areExperimentalFeaturesEnabled
|
|
3
|
+
areExperimentalFeaturesEnabled
|
|
4
|
+
} from "./chunk-YPHAIRZT.js";
|
|
5
|
+
import {
|
|
6
|
+
DefaultPackageManager
|
|
7
|
+
} from "./chunk-TVJUOJZJ.js";
|
|
8
|
+
import {
|
|
9
|
+
SettingsManager
|
|
10
|
+
} from "./chunk-QAZOULTU.js";
|
|
11
|
+
import {
|
|
4
12
|
getProjectTrustOptions,
|
|
5
13
|
hasTrustRequiringProjectResources
|
|
6
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-HTFRRDSF.js";
|
|
7
15
|
import {
|
|
8
|
-
DefaultPackageManager,
|
|
9
16
|
emitProjectTrustEvent
|
|
10
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-GJ2RDBRL.js";
|
|
11
18
|
import {
|
|
12
|
-
|
|
13
|
-
} from "./chunk-
|
|
19
|
+
KeybindingsManager
|
|
20
|
+
} from "./chunk-5EFIU3OM.js";
|
|
14
21
|
import {
|
|
15
22
|
ExtensionSelectorComponent
|
|
16
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-QH6YL7VK.js";
|
|
17
24
|
import {
|
|
18
25
|
ExtensionInputComponent
|
|
19
|
-
} from "./chunk-
|
|
20
|
-
import {
|
|
21
|
-
KeybindingsManager
|
|
22
|
-
} from "./chunk-5EFIU3OM.js";
|
|
26
|
+
} from "./chunk-HMBGROQK.js";
|
|
23
27
|
import {
|
|
24
28
|
DynamicBorder
|
|
25
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-6VYZ5UFP.js";
|
|
26
30
|
import {
|
|
27
31
|
keyHint,
|
|
28
32
|
rawKeyHint
|
|
29
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-GS42T6MX.js";
|
|
30
34
|
import {
|
|
31
35
|
detectTerminalBackgroundFromEnv,
|
|
32
36
|
detectTerminalThemeForAuto,
|
|
@@ -37,7 +41,7 @@ import {
|
|
|
37
41
|
setRegisteredThemes,
|
|
38
42
|
setTheme,
|
|
39
43
|
theme
|
|
40
|
-
} from "./chunk-
|
|
44
|
+
} from "./chunk-RDDAZOMU.js";
|
|
41
45
|
import {
|
|
42
46
|
APP_NAME,
|
|
43
47
|
CONFIG_DIR_NAME,
|