@ashx-j/lunr 0.2.20 → 0.2.22
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 +14 -2
- package/README.md +20 -4
- 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 +3 -0
- package/dist/builtin-extensions/lunr-browser.d.ts.map +1 -0
- package/dist/builtin-extensions/lunr-browser.js +56 -0
- package/dist/builtin-extensions/lunr-browser.js.map +1 -0
- package/dist/builtin-extensions/lunr-todos.d.ts +6 -5
- package/dist/builtin-extensions/lunr-todos.d.ts.map +1 -1
- package/dist/builtin-extensions/lunr-todos.js +24 -7
- package/dist/builtin-extensions/lunr-todos.js.map +1 -1
- package/dist/builtin-extensions/pi-intercom/broker/spawn.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-intercom/broker/spawn.js +30 -21
- package/dist/builtin-extensions/pi-intercom/broker/spawn.js.map +1 -1
- package/dist/builtin-extensions/pi-intercom/index.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-intercom/index.js +15 -3
- 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/fanout-child.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/extension/fanout-child.js +2 -2
- package/dist/builtin-extensions/pi-subagents/src/extension/fanout-child.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/extension/index.d.ts +8 -7
- package/dist/builtin-extensions/pi-subagents/src/extension/index.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/extension/index.js +78 -31
- package/dist/builtin-extensions/pi-subagents/src/extension/index.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/extension/schemas.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/extension/schemas.js +2 -2
- package/dist/builtin-extensions/pi-subagents/src/extension/schemas.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 +6 -2
- 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 +5 -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 +186 -58
- package/dist/builtin-extensions/pi-subagents/src/intercom/native-supervisor-channel.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/intercom/result-intercom.d.ts +1 -0
- package/dist/builtin-extensions/pi-subagents/src/intercom/result-intercom.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/intercom/result-intercom.js +1 -1
- package/dist/builtin-extensions/pi-subagents/src/intercom/result-intercom.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/async-execution.d.ts +2 -0
- package/dist/builtin-extensions/pi-subagents/src/runs/background/async-execution.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/async-execution.js +4 -3
- package/dist/builtin-extensions/pi-subagents/src/runs/background/async-execution.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/async-job-tracker.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/async-job-tracker.js +2 -0
- package/dist/builtin-extensions/pi-subagents/src/runs/background/async-job-tracker.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/notify.d.ts +6 -2
- package/dist/builtin-extensions/pi-subagents/src/runs/background/notify.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/notify.js +23 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/notify.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/result-watcher.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/result-watcher.js +1 -0
- package/dist/builtin-extensions/pi-subagents/src/runs/background/result-watcher.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.d.ts +100 -0
- package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.js +46 -31
- package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-runner.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/subagent-wait.d.ts +1 -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 +2 -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/top-level-async.d.ts +15 -2
- package/dist/builtin-extensions/pi-subagents/src/runs/background/top-level-async.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/top-level-async.js +14 -4
- package/dist/builtin-extensions/pi-subagents/src/runs/background/top-level-async.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 +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/wait-tool.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/foreground/execution.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/foreground/execution.js +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/foreground/execution.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.d.ts +0 -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 +9 -9
- package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/completion-guard.d.ts +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/completion-guard.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/completion-guard.js +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/completion-guard.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.d.ts +1 -0
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/pi-args.d.ts +3 -0
- 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 +5 -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/runs/shared/task-intent.d.ts +2 -2
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/task-intent.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/task-intent.js +5 -10
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/task-intent.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/shared/async-guidance.d.ts +2 -0
- package/dist/builtin-extensions/pi-subagents/src/shared/async-guidance.d.ts.map +1 -0
- package/dist/builtin-extensions/pi-subagents/src/shared/async-guidance.js +3 -0
- package/dist/builtin-extensions/pi-subagents/src/shared/async-guidance.js.map +1 -0
- package/dist/builtin-extensions/pi-subagents/src/shared/types.d.ts +6 -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/slash/delegation-adapters.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/slash/delegation-adapters.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.d.ts +7 -0
- package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.js +11 -7
- package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/slash/slash-commands.d.ts +4 -0
- package/dist/builtin-extensions/pi-subagents/src/slash/slash-commands.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/slash/slash-commands.js +22 -23
- package/dist/builtin-extensions/pi-subagents/src/slash/slash-commands.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 +47 -0
- package/dist/builtin-extensions/pi-subagents/src/tui/communication.js.map +1 -0
- package/dist/builtin-extensions/pi-subagents/src/tui/render.d.ts +2 -0
- package/dist/builtin-extensions/pi-subagents/src/tui/render.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/tui/render.js +237 -374
- package/dist/builtin-extensions/pi-subagents/src/tui/render.js.map +1 -1
- 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 +3 -0
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +20 -2
- 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 +2 -0
- package/dist/core/customize.d.ts.map +1 -1
- package/dist/core/customize.js +17 -13
- 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 +29 -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-spinner-setting.d.ts +6 -0
- package/dist/core/subagent-spinner-setting.d.ts.map +1 -0
- package/dist/core/subagent-spinner-setting.js +12 -0
- package/dist/core/subagent-spinner-setting.js.map +1 -0
- package/dist/core/subagent-spinner.d.ts +4 -0
- package/dist/core/subagent-spinner.d.ts.map +1 -0
- package/dist/core/subagent-spinner.js +6 -0
- package/dist/core/subagent-spinner.js.map +1 -0
- package/dist/core/system-prompt.d.ts.map +1 -1
- package/dist/core/system-prompt.js +5 -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 +11 -2
- package/dist/core/tools/render-utils.d.ts.map +1 -1
- package/dist/core/tools/render-utils.js +31 -4
- 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 +11 -2
- package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/assistant-message.js +53 -16
- package/dist/modes/interactive/components/assistant-message.js.map +1 -1
- package/dist/modes/interactive/components/copyable-text.d.ts +31 -0
- package/dist/modes/interactive/components/copyable-text.d.ts.map +1 -0
- package/dist/modes/interactive/components/copyable-text.js +165 -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 +9 -0
- package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector.js +111 -1
- package/dist/modes/interactive/components/settings-selector.js.map +1 -1
- package/dist/modes/interactive/extension-widget-order.d.ts +8 -0
- package/dist/modes/interactive/extension-widget-order.d.ts.map +1 -0
- package/dist/modes/interactive/extension-widget-order.js +37 -0
- package/dist/modes/interactive/extension-widget-order.js.map +1 -0
- package/dist/modes/interactive/interactive-mode.d.ts +3 -0
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +166 -29
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/dist/node-runtime/agent-session-services-NQ6GKOIK.js +49 -0
- package/dist/node-runtime/{builtin-extensions-X4JMM4ZS.js → builtin-extensions-GVC6IFDU.js} +6 -4
- 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-5BNJ4JUH.js +672 -0
- package/dist/node-runtime/{chunk-6N22HULO.js → chunk-5D7LC2ZQ.js} +7 -2
- package/dist/node-runtime/chunk-5ZH3ZFIZ.js +308 -0
- package/dist/node-runtime/{chunk-KBKMCJDU.js → chunk-5ZQXRPMC.js} +19 -4
- package/dist/node-runtime/{chunk-6KDIOJL3.js → chunk-6427XAWG.js} +3 -3
- package/dist/node-runtime/{chunk-BOHIDQT4.js → chunk-6B2POMK7.js} +1 -1
- package/dist/node-runtime/{chunk-RNBHABBA.js → chunk-7QWNYZDI.js} +7 -0
- package/dist/node-runtime/chunk-AZJHNQKQ.js +205 -0
- package/dist/node-runtime/chunk-BFNXONG3.js +521 -0
- 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-QZMODZQ2.js → chunk-E24EO34J.js} +2 -1
- package/dist/node-runtime/{chunk-QKFMBRAL.js → chunk-EQ63ANHL.js} +508 -140
- package/dist/node-runtime/{chunk-ELWEXVO5.js → chunk-GJSAD4AB.js} +216 -201
- package/dist/node-runtime/{chunk-AOFXZQKA.js → chunk-GMHJCCEN.js} +8 -8
- package/dist/node-runtime/{chunk-DDWHZ633.js → chunk-GNN7H3B7.js} +1 -1
- package/dist/node-runtime/chunk-GS66LV4M.js +2830 -0
- package/dist/node-runtime/{chunk-6BEIBLQ3.js → chunk-H3XF4UVQ.js} +1 -1
- package/dist/node-runtime/chunk-H4K3JDRB.js +47 -0
- package/dist/node-runtime/{chunk-AROOY4BB.js → chunk-HTFRRDSF.js} +2 -7
- package/dist/node-runtime/chunk-IMLCWLPI.js +9 -0
- package/dist/node-runtime/{chunk-4CSFRBCN.js → chunk-IQIEU7SB.js} +9 -674
- package/dist/node-runtime/{chunk-OPEK5RRY.js → chunk-IVXYUAJE.js} +1 -1
- package/dist/node-runtime/{chunk-AL2FMKKM.js → chunk-IWOWXRWU.js} +58 -48
- package/dist/node-runtime/chunk-KKUTQQV7.js +144 -0
- package/dist/node-runtime/chunk-LISUTZS3.js +19 -0
- package/dist/node-runtime/{chunk-K3646JTM.js → chunk-LMBNLFXQ.js} +25 -314
- 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-ORH324EP.js} +19 -3
- package/dist/node-runtime/{chunk-2SJB2AWP.js → chunk-PC2Z5TKZ.js} +3 -3
- package/dist/node-runtime/{chunk-46ECNOLF.js → chunk-QDGKKKUM.js} +97 -162
- package/dist/node-runtime/chunk-R3K2F5GI.js +122 -0
- package/dist/node-runtime/chunk-RMQZU2YU.js +117 -0
- package/dist/node-runtime/{chunk-JYNNB7DU.js → chunk-TDL7UWJ7.js} +283 -2999
- package/dist/node-runtime/{chunk-G6LRAP36.js → chunk-TQGPP4SC.js} +1 -1
- package/dist/node-runtime/chunk-UAEOTO52.js +119 -0
- package/dist/node-runtime/{chunk-4DJ6HEGH.js → chunk-UAFLNHSH.js} +18 -14
- 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-V2A7CEXK.js +355 -0
- package/dist/node-runtime/chunk-VJPTNWAP.js +708 -0
- package/dist/node-runtime/{chunk-WKDK4C5P.js → chunk-VSSXXL36.js} +38 -164
- package/dist/node-runtime/{chunk-4I23VTC4.js → chunk-VWCE2HSZ.js} +21 -124
- package/dist/node-runtime/{chunk-CBGB57XT.js → chunk-WADV2VDS.js} +32 -1014
- package/dist/node-runtime/{chunk-GKLEQ3I4.js → chunk-XLTL257W.js} +126 -27
- package/dist/node-runtime/chunk-YPHAIRZT.js +10 -0
- package/dist/node-runtime/cli-runtime.js +2 -2
- package/dist/node-runtime/command-3JHHXOPX.js +45 -0
- package/dist/node-runtime/commands-2JVNFGMQ.js +36 -0
- package/dist/node-runtime/{commands-MV5KOZ64.js → commands-KAMO2T6P.js} +10 -10
- package/dist/node-runtime/config-RORQUQFG.js +20 -0
- package/dist/node-runtime/{customize-XEXL2DGQ.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-KBFVV63J.js} +4 -3
- package/dist/node-runtime/{extension-input-O4HSAEM4.js → extension-input-K24TVKVW.js} +4 -4
- package/dist/node-runtime/{extension-selector-X5FCX43D.js → extension-selector-SPNF7EDR.js} +4 -4
- package/dist/node-runtime/{extract-XLQSJN4V.js → extract-EQJE7FZZ.js} +2 -2
- package/dist/node-runtime/{gateway-L4ANRTVE.js → gateway-VFO6SFKK.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 +105 -64
- package/dist/node-runtime/{init-3C7Z24OI.js → init-X2LIUB2H.js} +3 -3
- package/dist/node-runtime/{install-cli-EXMJQESX.js → install-cli-C3CF7O7N.js} +21 -82
- package/dist/node-runtime/interactive-mode-LOM6AIF6.js +72 -0
- package/dist/node-runtime/{interactive-view-ILS6TAN5.js → interactive-view-IDSCPPK7.js} +8 -8
- package/dist/node-runtime/lunr-browser-YNW7FTYX.js +87 -0
- package/dist/node-runtime/{lunr-cron-NNYTWTGF.js → lunr-cron-BKHGNBKT.js} +19 -5
- package/dist/node-runtime/main.js +45 -30
- package/dist/node-runtime/{memory-cap-3S4XRLNP.js → memory-cap-EL3KL4JJ.js} +2 -1
- package/dist/node-runtime/mobile-commands-HMP25WBC.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-7RKSZGEN.js → package-manager-cli-VCK4E2RC.js} +23 -15
- package/dist/node-runtime/{pi-intercom-DDQMRNPJ.js → pi-intercom-HBPK5HSJ.js} +38 -34
- package/dist/node-runtime/{pi-mcp-adapter-GUFZWW54.js → pi-mcp-adapter-E6WULBKF.js} +4 -4
- package/dist/node-runtime/{pi-subagents-T5WMMLBB.js → pi-subagents-FEUDLJOE.js} +476 -412
- 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 +46 -31
- package/dist/node-runtime/{rpc-mode-W5ZTLTMZ.js → rpc-mode-P5ODXPEG.js} +2 -2
- package/dist/node-runtime/runtime-4VA6JKNF.js +373 -0
- package/dist/node-runtime/{runtime-bridges-NJQERQ72.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-LHRMJOKT.js} +5 -4
- package/dist/node-runtime/{settings-manager-GHPTUN7R.js → settings-manager-UUZ6NUXI.js} +8 -2
- package/dist/node-runtime/setup-JBKOLJ6F.js +18 -0
- package/dist/node-runtime/setup-NRXVZBLJ.js +155 -0
- package/dist/node-runtime/{subagent-executor-SRFC26SJ.js → subagent-executor-MLUMBWCP.js} +35 -63
- package/dist/node-runtime/theme-U7IGOA7O.js +68 -0
- package/dist/node-runtime/trust-manager-MMISNCYO.js +17 -0
- package/dist/node-runtime/{update-cli-L3JIBH2U.js → update-cli-4TP25CNW.js} +8 -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 +99 -17
- package/docs/interactive-startup.md +2 -1
- package/docs/sessions.md +10 -0
- package/docs/settings.md +3 -1
- 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-75JKASCW.js +0 -36
- package/dist/node-runtime/chunk-HQCKFM2O.js +0 -56
- package/dist/node-runtime/command-RBTRL55A.js +0 -13
- package/dist/node-runtime/interactive-mode-HPUNH7SV.js +0 -57
- 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
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
truncateTail
|
|
9
9
|
} from "./chunk-53YJI7JU.js";
|
|
10
10
|
import {
|
|
11
|
-
|
|
11
|
+
GroupedCallText,
|
|
12
12
|
getTextOutput,
|
|
13
13
|
invalidArgText,
|
|
14
14
|
normalizeDisplayText,
|
|
@@ -21,7 +21,14 @@ import {
|
|
|
21
21
|
toolGroupTree,
|
|
22
22
|
toolStatusDot,
|
|
23
23
|
toolStatusDotFromContext
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-5ZQXRPMC.js";
|
|
25
|
+
import {
|
|
26
|
+
processImage
|
|
27
|
+
} from "./chunk-AD6VXAO7.js";
|
|
28
|
+
import {
|
|
29
|
+
markExited,
|
|
30
|
+
register
|
|
31
|
+
} from "./chunk-KKUTQQV7.js";
|
|
25
32
|
import {
|
|
26
33
|
getShellConfig,
|
|
27
34
|
getShellEnv,
|
|
@@ -29,17 +36,14 @@ import {
|
|
|
29
36
|
trackDetachedChildPid,
|
|
30
37
|
untrackDetachedChildPid
|
|
31
38
|
} from "./chunk-CSFI6YXL.js";
|
|
32
|
-
import {
|
|
33
|
-
processImage
|
|
34
|
-
} from "./chunk-AD6VXAO7.js";
|
|
35
39
|
import {
|
|
36
40
|
keyHint
|
|
37
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-GNN7H3B7.js";
|
|
38
42
|
import {
|
|
39
43
|
getLanguageFromPath,
|
|
40
44
|
highlightCode,
|
|
41
45
|
theme
|
|
42
|
-
} from "./chunk-
|
|
46
|
+
} from "./chunk-7QWNYZDI.js";
|
|
43
47
|
import {
|
|
44
48
|
APP_NAME,
|
|
45
49
|
formatPathRelativeToCwdOrAbsolute,
|
|
@@ -61,133 +65,11 @@ function truncateToVisualLines(text, maxVisualLines, width, paddingX = 0) {
|
|
|
61
65
|
return { visualLines: truncatedLines, skippedCount };
|
|
62
66
|
}
|
|
63
67
|
|
|
64
|
-
// packages/coding-agent/dist/core/process-registry.js
|
|
65
|
-
import { spawn } from "node:child_process";
|
|
66
|
-
var isWin32 = process.platform === "win32", EXIT_NOISE_GATE_MS = 3e3, EXIT_TTL_MS = 300 * 1e3, MAX_TRACKED = 100, processes = /* @__PURE__ */ new Map();
|
|
67
|
-
function register(pid, command, cwd, sessionId) {
|
|
68
|
-
if (pid) {
|
|
69
|
-
if (processes.size >= MAX_TRACKED) {
|
|
70
|
-
let oldest;
|
|
71
|
-
for (let [p, entry] of processes) {
|
|
72
|
-
if (entry.status === "exited") {
|
|
73
|
-
oldest = { pid: p, entry };
|
|
74
|
-
break;
|
|
75
|
-
}
|
|
76
|
-
(!oldest || entry.startedAt < oldest.entry.startedAt) && (oldest = { pid: p, entry });
|
|
77
|
-
}
|
|
78
|
-
oldest && processes.delete(oldest.pid);
|
|
79
|
-
}
|
|
80
|
-
processes.set(pid, { pid, command, cwd, startedAt: Date.now(), status: "running", sessionId });
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
function markExited(pid, exitCode) {
|
|
84
|
-
if (!pid)
|
|
85
|
-
return;
|
|
86
|
-
let entry = processes.get(pid);
|
|
87
|
-
if (!entry)
|
|
88
|
-
return;
|
|
89
|
-
if (Date.now() - entry.startedAt < EXIT_NOISE_GATE_MS) {
|
|
90
|
-
processes.delete(pid);
|
|
91
|
-
return;
|
|
92
|
-
}
|
|
93
|
-
entry.status = "exited", entry.exitCode = exitCode ?? void 0, entry.exitedAt = Date.now();
|
|
94
|
-
}
|
|
95
|
-
function list(sessionId) {
|
|
96
|
-
return prune(), [...processes.values()].filter((p) => sessionId === void 0 || p.sessionId === sessionId);
|
|
97
|
-
}
|
|
98
|
-
function prune() {
|
|
99
|
-
for (let [pid, entry] of processes) {
|
|
100
|
-
if (entry.status === "exited") {
|
|
101
|
-
(!entry.exitedAt || Date.now() - entry.exitedAt > EXIT_TTL_MS) && processes.delete(pid);
|
|
102
|
-
continue;
|
|
103
|
-
}
|
|
104
|
-
isAlive(pid) || markExited(pid, null);
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
function isAlive(pid) {
|
|
108
|
-
try {
|
|
109
|
-
return process.kill(pid, 0), !0;
|
|
110
|
-
} catch {
|
|
111
|
-
return !1;
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
function kill(pid) {
|
|
115
|
-
processes.has(pid) && (killProcessTree(pid), processes.delete(pid));
|
|
116
|
-
}
|
|
117
|
-
function killAll(sessionId) {
|
|
118
|
-
for (let [pid, entry] of processes)
|
|
119
|
-
if (!(sessionId !== void 0 && entry.sessionId !== sessionId)) {
|
|
120
|
-
try {
|
|
121
|
-
killProcessTree(pid);
|
|
122
|
-
} catch {
|
|
123
|
-
}
|
|
124
|
-
processes.delete(pid);
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
function pause(pid) {
|
|
128
|
-
if (isWin32)
|
|
129
|
-
throw new Error("Pause/resume is unsupported on Windows.");
|
|
130
|
-
if (!processes.has(pid))
|
|
131
|
-
throw new Error(`Process ${pid} is not tracked.`);
|
|
132
|
-
try {
|
|
133
|
-
process.kill(pid, "SIGSTOP");
|
|
134
|
-
let entry = processes.get(pid);
|
|
135
|
-
entry && (entry.status = "paused");
|
|
136
|
-
} catch {
|
|
137
|
-
processes.delete(pid);
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
function resume(pid) {
|
|
141
|
-
if (isWin32)
|
|
142
|
-
throw new Error("Pause/resume is unsupported on Windows.");
|
|
143
|
-
if (!processes.has(pid))
|
|
144
|
-
throw new Error(`Process ${pid} is not tracked.`);
|
|
145
|
-
try {
|
|
146
|
-
process.kill(pid, "SIGCONT");
|
|
147
|
-
let entry = processes.get(pid);
|
|
148
|
-
entry && (entry.status = "running");
|
|
149
|
-
} catch {
|
|
150
|
-
processes.delete(pid);
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
function restart(pid) {
|
|
154
|
-
let entry = processes.get(pid);
|
|
155
|
-
if (entry) {
|
|
156
|
-
try {
|
|
157
|
-
killProcessTree(pid);
|
|
158
|
-
} catch {
|
|
159
|
-
}
|
|
160
|
-
processes.delete(pid);
|
|
161
|
-
try {
|
|
162
|
-
let shellConfig = getShellConfig(), child = spawn(shellConfig.shell, [...shellConfig.args, entry.command], {
|
|
163
|
-
cwd: entry.cwd,
|
|
164
|
-
detached: !0,
|
|
165
|
-
stdio: "ignore",
|
|
166
|
-
windowsHide: !0
|
|
167
|
-
});
|
|
168
|
-
if (child.pid)
|
|
169
|
-
return register(child.pid, entry.command, entry.cwd, entry.sessionId), child.unref(), child.pid;
|
|
170
|
-
} catch {
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
function isWindows() {
|
|
175
|
-
return isWin32;
|
|
176
|
-
}
|
|
177
|
-
function clearRegistry(sessionId) {
|
|
178
|
-
if (sessionId === void 0) {
|
|
179
|
-
processes.clear();
|
|
180
|
-
return;
|
|
181
|
-
}
|
|
182
|
-
for (let [pid, entry] of processes)
|
|
183
|
-
entry.sessionId === sessionId && processes.delete(pid);
|
|
184
|
-
}
|
|
185
|
-
|
|
186
68
|
// packages/coding-agent/dist/core/tools/bash.js
|
|
187
69
|
import { constants } from "node:fs";
|
|
188
70
|
import { access as fsAccess } from "node:fs/promises";
|
|
189
71
|
import { Container, Text as Text2, truncateToWidth } from "@ashx-j/lunr-tui";
|
|
190
|
-
import { spawn
|
|
72
|
+
import { spawn } from "child_process";
|
|
191
73
|
import { Type } from "typebox";
|
|
192
74
|
|
|
193
75
|
// packages/coding-agent/dist/core/tools/output-accumulator.js
|
|
@@ -370,7 +252,7 @@ function createLocalBashOperations(options) {
|
|
|
370
252
|
throw new Error(`Working directory does not exist: ${cwd}
|
|
371
253
|
Cannot execute bash commands.`);
|
|
372
254
|
}
|
|
373
|
-
let commandFromStdin = shellConfig.commandTransport === "stdin", child =
|
|
255
|
+
let commandFromStdin = shellConfig.commandTransport === "stdin", child = spawn(shellConfig.shell, commandFromStdin ? shellConfig.args : [...shellConfig.args, command], {
|
|
374
256
|
cwd,
|
|
375
257
|
detached: process.platform !== "win32",
|
|
376
258
|
env: env ?? getShellEnv(),
|
|
@@ -565,15 +447,15 @@ ${command}` : command, spawnContext = resolveSpawnContext(resolvedCommand, cwd,
|
|
|
565
447
|
context.executionStarted && state.startedAt === void 0 && (state.startedAt = Date.now(), state.endedAt = void 0), !context.isPartial && state.startedAt !== void 0 && (state.endedAt ??= Date.now());
|
|
566
448
|
let compact = !context.isPartial && !context.expanded && !context.isError, detail = formatBashCall(args, { expanded: context.expanded, compact });
|
|
567
449
|
compact && state.startedAt !== void 0 && state.endedAt !== void 0 && (detail += theme.fg("muted", ` \u2014 Took ${formatDuration(state.endedAt - state.startedAt)}`));
|
|
568
|
-
let text = context.lastComponent ?? new
|
|
569
|
-
return text.
|
|
450
|
+
let text = context.lastComponent ?? new GroupedCallText("", 0, 0);
|
|
451
|
+
return text.setCall({
|
|
570
452
|
role: context.groupRole ?? "singleton",
|
|
571
453
|
compact,
|
|
572
454
|
tree: toolGroupTree(context),
|
|
573
455
|
dot: toolStatusDotFromContext(context, theme),
|
|
574
456
|
title: theme.fg("toolTitle", theme.bold("$")),
|
|
575
457
|
detail
|
|
576
|
-
})
|
|
458
|
+
}), text;
|
|
577
459
|
},
|
|
578
460
|
renderResult(result, options2, _theme, context) {
|
|
579
461
|
let state = context.state;
|
|
@@ -1523,15 +1405,15 @@ function getEditHeaderBg(preview, settledError, theme2) {
|
|
|
1523
1405
|
}
|
|
1524
1406
|
function buildEditCallComponent(component, args, theme2, cwd, dotState, compact = !1, role = "singleton", tree = compact) {
|
|
1525
1407
|
component.setBgFn(getEditHeaderBg(component.preview, component.settledError, theme2)), component.clear();
|
|
1526
|
-
let grouped = tree && role !== "singleton", pathDisplay = formatEditCall(args, theme2, cwd, compact || grouped);
|
|
1527
|
-
if (
|
|
1408
|
+
let grouped = tree && role !== "singleton", pathDisplay = formatEditCall(args, theme2, cwd, compact || grouped), header = new GroupedCallText("", 0, 0);
|
|
1409
|
+
if (header.setCall({
|
|
1528
1410
|
role,
|
|
1529
1411
|
compact,
|
|
1530
1412
|
tree,
|
|
1531
1413
|
dot: toolStatusDot(dotState, theme2),
|
|
1532
1414
|
title: theme2.fg("toolTitle", theme2.bold("edit")),
|
|
1533
1415
|
detail: pathDisplay
|
|
1534
|
-
}),
|
|
1416
|
+
}), component.addChild(header), compact || grouped || !component.preview)
|
|
1535
1417
|
return component;
|
|
1536
1418
|
let body = "error" in component.preview ? theme2.fg("error", component.preview.error) : renderDiff(component.preview.diff);
|
|
1537
1419
|
return component.addChild(new Spacer(1)), component.addChild(new Text3(body, 0, 0)), component;
|
|
@@ -1835,7 +1717,7 @@ async function ensureTool(tool, silent = !1) {
|
|
|
1835
1717
|
// packages/coding-agent/dist/core/tools/find.js
|
|
1836
1718
|
import { createInterface } from "node:readline";
|
|
1837
1719
|
import { Text as Text4 } from "@ashx-j/lunr-tui";
|
|
1838
|
-
import { spawn as
|
|
1720
|
+
import { spawn as spawn2 } from "child_process";
|
|
1839
1721
|
import path from "path";
|
|
1840
1722
|
import { Type as Type3 } from "typebox";
|
|
1841
1723
|
function toPosixPath(value) {
|
|
@@ -1960,7 +1842,7 @@ function createFindToolDefinition(cwd, options) {
|
|
|
1960
1842
|
insideGitRepo || args.push("--no-require-git"), args.push("--max-results", String(effectiveLimit));
|
|
1961
1843
|
let effectivePattern = pattern;
|
|
1962
1844
|
pattern.includes("/") && (args.push("--full-path"), !pattern.startsWith("/") && !pattern.startsWith("**/") && pattern !== "**" && (effectivePattern = `**/${pattern}`)), args.push("--", effectivePattern, searchPath);
|
|
1963
|
-
let child =
|
|
1845
|
+
let child = spawn2(fdPath, args, { stdio: ["ignore", "pipe", "pipe"] }), rl = createInterface({ input: child.stdout }), stderr = "", lines = [];
|
|
1964
1846
|
stopChild = () => {
|
|
1965
1847
|
child.killed || child.kill();
|
|
1966
1848
|
};
|
|
@@ -2023,15 +1905,15 @@ function createFindToolDefinition(cwd, options) {
|
|
|
2023
1905
|
});
|
|
2024
1906
|
},
|
|
2025
1907
|
renderCall(args, theme2, context) {
|
|
2026
|
-
let text = context.lastComponent ?? new
|
|
2027
|
-
return text.
|
|
1908
|
+
let text = context.lastComponent ?? new GroupedCallText("", 0, 0), compact = !context.isPartial && !context.expanded && !context.isError;
|
|
1909
|
+
return text.setCall({
|
|
2028
1910
|
role: context.groupRole ?? "singleton",
|
|
2029
1911
|
compact,
|
|
2030
1912
|
tree: toolGroupTree(context),
|
|
2031
1913
|
dot: toolStatusDotFromContext(context, theme2),
|
|
2032
1914
|
title: theme2.fg("toolTitle", theme2.bold("find")),
|
|
2033
1915
|
detail: formatFindCall(args, theme2, context.cwd, !context.expanded)
|
|
2034
|
-
})
|
|
1916
|
+
}), text;
|
|
2035
1917
|
},
|
|
2036
1918
|
renderResult(result, options2, theme2, context) {
|
|
2037
1919
|
let text = context.lastComponent ?? new Text4("", 0, 0);
|
|
@@ -2047,7 +1929,7 @@ function createFindTool(cwd, options) {
|
|
|
2047
1929
|
import { readFile as fsReadFile2, stat as fsStat } from "node:fs/promises";
|
|
2048
1930
|
import { createInterface as createInterface2 } from "node:readline";
|
|
2049
1931
|
import { Text as Text5 } from "@ashx-j/lunr-tui";
|
|
2050
|
-
import { spawn as
|
|
1932
|
+
import { spawn as spawn3 } from "child_process";
|
|
2051
1933
|
import path2 from "path";
|
|
2052
1934
|
import { Type as Type4 } from "typebox";
|
|
2053
1935
|
var grepSchema = Type4.Object({
|
|
@@ -2145,7 +2027,7 @@ function createGrepToolDefinition(cwd, options) {
|
|
|
2145
2027
|
return lines;
|
|
2146
2028
|
}, args = ["--json", "--line-number", "--color=never", "--hidden"];
|
|
2147
2029
|
ignoreCase && args.push("--ignore-case"), literal && args.push("--fixed-strings"), glob && args.push("--glob", glob), args.push("--", pattern, searchPath);
|
|
2148
|
-
let child =
|
|
2030
|
+
let child = spawn3(rgPath, args, { stdio: ["ignore", "pipe", "pipe"] }), rl = createInterface2({ input: child.stdout }), stderr = "", matchCount = 0, matchLimitReached = !1, linesTruncated = !1, aborted = !1, killedDueToLimit = !1, outputLines = [], cleanup = () => {
|
|
2149
2031
|
rl.close(), signal?.removeEventListener("abort", onAbort);
|
|
2150
2032
|
}, stopChild = (dueToLimit = !1) => {
|
|
2151
2033
|
child.killed || (killedDueToLimit = dueToLimit, child.kill());
|
|
@@ -2221,15 +2103,15 @@ function createGrepToolDefinition(cwd, options) {
|
|
|
2221
2103
|
});
|
|
2222
2104
|
},
|
|
2223
2105
|
renderCall(args, theme2, context) {
|
|
2224
|
-
let text = context.lastComponent ?? new
|
|
2225
|
-
return text.
|
|
2106
|
+
let text = context.lastComponent ?? new GroupedCallText("", 0, 0), compact = !context.isPartial && !context.expanded && !context.isError;
|
|
2107
|
+
return text.setCall({
|
|
2226
2108
|
role: context.groupRole ?? "singleton",
|
|
2227
2109
|
compact,
|
|
2228
2110
|
tree: toolGroupTree(context),
|
|
2229
2111
|
dot: toolStatusDotFromContext(context, theme2),
|
|
2230
2112
|
title: theme2.fg("toolTitle", theme2.bold("grep")),
|
|
2231
2113
|
detail: formatGrepCall(args, theme2, context.cwd, !context.expanded)
|
|
2232
|
-
})
|
|
2114
|
+
}), text;
|
|
2233
2115
|
},
|
|
2234
2116
|
renderResult(result, options2, theme2, context) {
|
|
2235
2117
|
let text = context.lastComponent ?? new Text5("", 0, 0);
|
|
@@ -2343,15 +2225,15 @@ function createLsToolDefinition(cwd, options) {
|
|
|
2343
2225
|
});
|
|
2344
2226
|
},
|
|
2345
2227
|
renderCall(args, theme2, context) {
|
|
2346
|
-
let text = context.lastComponent ?? new
|
|
2347
|
-
return text.
|
|
2228
|
+
let text = context.lastComponent ?? new GroupedCallText("", 0, 0), compact = !context.isPartial && !context.expanded && !context.isError;
|
|
2229
|
+
return text.setCall({
|
|
2348
2230
|
role: context.groupRole ?? "singleton",
|
|
2349
2231
|
compact,
|
|
2350
2232
|
tree: toolGroupTree(context),
|
|
2351
2233
|
dot: toolStatusDotFromContext(context, theme2),
|
|
2352
2234
|
title: theme2.fg("toolTitle", theme2.bold("ls")),
|
|
2353
2235
|
detail: formatLsCall(args, theme2, context.cwd, !context.expanded)
|
|
2354
|
-
})
|
|
2236
|
+
}), text;
|
|
2355
2237
|
},
|
|
2356
2238
|
renderResult(result, options2, theme2, context) {
|
|
2357
2239
|
let text = context.lastComponent ?? new Text6("", 0, 0);
|
|
@@ -2594,15 +2476,15 @@ ${nonVisionImageNote}`), content = [{ type: "text", text: textNote }];
|
|
|
2594
2476
|
});
|
|
2595
2477
|
},
|
|
2596
2478
|
renderCall(args, theme2, context) {
|
|
2597
|
-
let text = context.lastComponent ?? new
|
|
2598
|
-
return classification?.kind === "skill" ? (title = theme2.fg("customMessageLabel", "\x1B[1m[skill]\x1B[22m"), detail = theme2.fg("customMessageText", classification.label)) : classification ? (title = theme2.fg("toolTitle", theme2.bold(`read ${classification.kind}`)), detail = theme2.fg("accent", classification.label)) : detail = formatReadDetail(args, theme2, context.cwd, context.expanded), text.
|
|
2479
|
+
let text = context.lastComponent ?? new GroupedCallText("", 0, 0), compact = !context.isPartial && !context.expanded && !context.isError, classification = context.expanded ? void 0 : getCompactReadClassification(args, context.cwd), title = theme2.fg("toolTitle", theme2.bold("read")), detail;
|
|
2480
|
+
return classification?.kind === "skill" ? (title = theme2.fg("customMessageLabel", "\x1B[1m[skill]\x1B[22m"), detail = theme2.fg("customMessageText", classification.label)) : classification ? (title = theme2.fg("toolTitle", theme2.bold(`read ${classification.kind}`)), detail = theme2.fg("accent", classification.label)) : detail = formatReadDetail(args, theme2, context.cwd, context.expanded), text.setCall({
|
|
2599
2481
|
role: context.groupRole ?? "singleton",
|
|
2600
2482
|
compact,
|
|
2601
2483
|
tree: toolGroupTree(context),
|
|
2602
2484
|
dot: toolStatusDotFromContext(context, theme2),
|
|
2603
2485
|
title,
|
|
2604
2486
|
detail
|
|
2605
|
-
})
|
|
2487
|
+
}), text;
|
|
2606
2488
|
},
|
|
2607
2489
|
renderResult(result, options2, theme2, context) {
|
|
2608
2490
|
let text = context.lastComponent ?? new Text7("", 0, 0);
|
|
@@ -2626,7 +2508,7 @@ var writeSchema = Type7.Object({
|
|
|
2626
2508
|
writeFile: (path3, content) => fsWriteFile2(path3, content, "utf-8"),
|
|
2627
2509
|
mkdir: (dir) => fsMkdir(dir, { recursive: !0 }).then(() => {
|
|
2628
2510
|
})
|
|
2629
|
-
}, WriteCallRenderComponent = class extends
|
|
2511
|
+
}, WriteCallRenderComponent = class extends GroupedCallText {
|
|
2630
2512
|
cache;
|
|
2631
2513
|
constructor() {
|
|
2632
2514
|
super("", 0, 0);
|
|
@@ -2737,14 +2619,14 @@ function createWriteToolDefinition(cwd, options) {
|
|
|
2737
2619
|
let detail = renderToolFileName(rawPath, theme2, context.cwd);
|
|
2738
2620
|
fileContent === null && (detail += `
|
|
2739
2621
|
|
|
2740
|
-
${theme2.fg("error", "[invalid content arg - expected string]")}`), component.
|
|
2622
|
+
${theme2.fg("error", "[invalid content arg - expected string]")}`), component.setCall({
|
|
2741
2623
|
role: context.groupRole ?? "singleton",
|
|
2742
2624
|
compact,
|
|
2743
2625
|
tree,
|
|
2744
2626
|
dot: toolStatusDotFromContext(context, theme2),
|
|
2745
2627
|
title: theme2.fg("toolTitle", theme2.bold("write")),
|
|
2746
2628
|
detail
|
|
2747
|
-
})
|
|
2629
|
+
});
|
|
2748
2630
|
} else
|
|
2749
2631
|
component.setText(`${toolStatusDotFromContext(context, theme2)} ${formatWriteCall(renderArgs, { expanded: context.expanded, isPartial: context.isPartial }, theme2, component.cache, context.cwd, !1)}`);
|
|
2750
2632
|
return component;
|
|
@@ -2797,14 +2679,6 @@ export {
|
|
|
2797
2679
|
wrapToolDefinition,
|
|
2798
2680
|
createToolDefinitionFromAgentTool,
|
|
2799
2681
|
truncateToVisualLines,
|
|
2800
|
-
list,
|
|
2801
|
-
kill,
|
|
2802
|
-
killAll,
|
|
2803
|
-
pause,
|
|
2804
|
-
resume,
|
|
2805
|
-
restart,
|
|
2806
|
-
isWindows,
|
|
2807
|
-
clearRegistry,
|
|
2808
2682
|
createLocalBashOperations,
|
|
2809
2683
|
createBashToolDefinition,
|
|
2810
2684
|
createBashTool,
|
|
@@ -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,
|