@gajae-code/coding-agent 0.13.3 → 0.14.0
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 +184 -2
- package/README.md +2 -0
- package/bin/gajaessi.js +4 -0
- package/dist/types/async/job-manager.d.ts +55 -2
- package/dist/types/async/support.d.ts +14 -0
- package/dist/types/capability/mcp.d.ts +6 -0
- package/dist/types/capability/types.d.ts +6 -0
- package/dist/types/cli/accounts-cli.d.ts +19 -0
- package/dist/types/cli/args.d.ts +3 -0
- package/dist/types/cli/config-cli.d.ts +6 -0
- package/dist/types/cli/crash-cli.d.ts +10 -0
- package/dist/types/cli/customize-doctor.d.ts +145 -0
- package/dist/types/cli/daemon-cli.d.ts +3 -1
- package/dist/types/cli/mcp-cli.d.ts +11 -0
- package/dist/types/cli/notify-cli.d.ts +1 -1
- package/dist/types/cli/root-flags.d.ts +12 -0
- package/dist/types/cli/setup-cli.d.ts +3 -1
- package/dist/types/cli/skills-cli.d.ts +2 -1
- package/dist/types/cli/update-cli.d.ts +19 -1
- package/dist/types/cli.d.ts +6 -0
- package/dist/types/commands/accounts.d.ts +40 -0
- package/dist/types/commands/crash.d.ts +24 -0
- package/dist/types/commands/customize.d.ts +22 -0
- package/dist/types/commands/daemon.d.ts +1 -1
- package/dist/types/commands/launch.d.ts +6 -0
- package/dist/types/commands/setup.d.ts +6 -0
- package/dist/types/commands/skills.d.ts +6 -1
- package/dist/types/commands/update.d.ts +7 -0
- package/dist/types/config/atomic-yaml-patch-worker.d.ts +25 -0
- package/dist/types/config/atomic-yaml-patch.d.ts +62 -2
- package/dist/types/config/config-schema-version.d.ts +10 -0
- package/dist/types/config/file-lock.d.ts +18 -0
- package/dist/types/config/model-profile-activation.d.ts +3 -1
- package/dist/types/config/model-registry.d.ts +9 -1
- package/dist/types/config/models-config-schema.d.ts +2 -0
- package/dist/types/config/settings-schema.d.ts +70 -6
- package/dist/types/config/settings.d.ts +63 -0
- package/dist/types/config/skill-settings-defaults.d.ts +26 -0
- package/dist/types/config/task-delegation.d.ts +39 -0
- package/dist/types/config/update-channel.d.ts +10 -0
- package/dist/types/coordinator-mcp/server.d.ts +5 -1
- package/dist/types/crash/index-store.d.ts +87 -0
- package/dist/types/crash/nudge.d.ts +50 -0
- package/dist/types/crash/record-loader.d.ts +17 -0
- package/dist/types/crash/report.d.ts +134 -0
- package/dist/types/crash/sanitize.d.ts +25 -0
- package/dist/types/cursor.d.ts +13 -2
- package/dist/types/customization/import.d.ts +37 -0
- package/dist/types/customization/index.d.ts +4 -0
- package/dist/types/customization/inventory.d.ts +25 -0
- package/dist/types/customization/mutations.d.ts +32 -0
- package/dist/types/customization/types.d.ts +115 -0
- package/dist/types/daemon/control-types.d.ts +8 -1
- package/dist/types/daemon/operator-contract.d.ts +4 -4
- package/dist/types/discovery/claude.d.ts +39 -1
- package/dist/types/discovery/codex.d.ts +39 -1
- package/dist/types/discovery/index.d.ts +2 -0
- package/dist/types/discovery/mcp-compat.d.ts +30 -0
- package/dist/types/edit/renderer.d.ts +23 -0
- package/dist/types/extensibility/extensions/runner.d.ts +3 -0
- package/dist/types/extensibility/extensions/types.d.ts +21 -4
- package/dist/types/extensibility/gjc-plugins/observability.d.ts +6 -1
- package/dist/types/extensibility/gjc-plugins/registry.d.ts +8 -1
- package/dist/types/extensibility/hooks/loader.d.ts +19 -5
- package/dist/types/extensibility/runtime-skill-discovery.d.ts +22 -1
- package/dist/types/extensibility/skill-management.d.ts +107 -0
- package/dist/types/gjc-runtime/deep-interview-runtime.d.ts +3 -1
- package/dist/types/gjc-runtime/launch-worktree.d.ts +8 -0
- package/dist/types/gjc-runtime/linux-proc.d.ts +3 -0
- package/dist/types/gjc-runtime/ralplan-runtime.d.ts +10 -6
- package/dist/types/gjc-runtime/session-state-lock.d.ts +104 -0
- package/dist/types/gjc-runtime/session-state-sidecar.d.ts +120 -2
- package/dist/types/gjc-runtime/state-writer.d.ts +10 -1
- package/dist/types/gjc-runtime/ultragoal-guard.d.ts +4 -2
- package/dist/types/gjc-runtime/ultragoal-runtime.d.ts +8 -6
- package/dist/types/gjc-runtime/workflow-settings.d.ts +109 -0
- package/dist/types/hooks/events.d.ts +60 -0
- package/dist/types/hooks/normalize.d.ts +83 -0
- package/dist/types/hooks/skill-state.d.ts +9 -2
- package/dist/types/main.d.ts +1 -1
- package/dist/types/modes/acp/abort-scope.d.ts +13 -0
- package/dist/types/modes/acp/acp-agent.d.ts +7 -4
- package/dist/types/modes/components/customization/customization-dashboard.d.ts +44 -0
- package/dist/types/modes/components/customization/import-wizard.d.ts +21 -0
- package/dist/types/modes/components/customization/index.d.ts +1 -0
- package/dist/types/modes/components/gajae-pet-widget.d.ts +8 -30
- package/dist/types/modes/components/irc-sidebar.d.ts +1 -0
- package/dist/types/modes/components/iterm-pet-transport.d.ts +122 -0
- package/dist/types/modes/components/oauth-selector.d.ts +10 -4
- package/dist/types/modes/components/pet-capability.d.ts +11 -25
- package/dist/types/modes/components/status-line/gh.d.ts +6 -2
- package/dist/types/modes/controllers/extension-ui-controller.d.ts +1 -1
- package/dist/types/modes/controllers/selector-controller.d.ts +7 -8
- package/dist/types/modes/controllers/stt-controller.d.ts +1 -1
- package/dist/types/modes/interactive-mode.d.ts +1 -0
- package/dist/types/modes/types.d.ts +1 -0
- package/dist/types/modes/utils/injected-user-submission.d.ts +10 -0
- package/dist/types/runtime-mcp/config.d.ts +9 -0
- package/dist/types/runtime-mcp/manager.d.ts +26 -1
- package/dist/types/runtime-mcp/oauth-discovery.d.ts +4 -0
- package/dist/types/runtime-mcp/oauth-flow.d.ts +24 -1
- package/dist/types/runtime-mcp/pool-key.d.ts +2 -0
- package/dist/types/runtime-mcp/protocol.d.ts +278 -0
- package/dist/types/runtime-mcp/scope-config.d.ts +29 -0
- package/dist/types/runtime-mcp/tool-bridge.d.ts +15 -13
- package/dist/types/runtime-mcp/transports/http.d.ts +9 -0
- package/dist/types/runtime-mcp/types.d.ts +102 -10
- package/dist/types/sdk/acp/adapter.d.ts +26 -5
- package/dist/types/sdk/broker/broker.d.ts +3 -55
- package/dist/types/sdk/broker/lifecycle.d.ts +18 -12
- package/dist/types/sdk/broker/session-index.d.ts +14 -5
- package/dist/types/sdk/broker/startup-failure.d.ts +16 -1
- package/dist/types/sdk/bus/chat-daemon-control.d.ts +51 -1
- package/dist/types/sdk/bus/chat-daemon-runtime.d.ts +4 -41
- package/dist/types/sdk/bus/config.d.ts +11 -0
- package/dist/types/sdk/bus/conversation-store.d.ts +0 -1
- package/dist/types/sdk/bus/daemon-paths.d.ts +6 -0
- package/dist/types/sdk/bus/discord-conversation.d.ts +2 -0
- package/dist/types/sdk/bus/discord-daemon.d.ts +17 -12
- package/dist/types/sdk/bus/existing-thread-readiness.d.ts +4 -34
- package/dist/types/sdk/bus/inbound-reaction-ordering.d.ts +61 -0
- package/dist/types/sdk/bus/index.d.ts +85 -99
- package/dist/types/sdk/bus/kind-aware-reconciliation.d.ts +29 -7
- package/dist/types/sdk/bus/managed-daemon.d.ts +2 -32
- package/dist/types/sdk/bus/notification-service.d.ts +52 -0
- package/dist/types/sdk/bus/operator-runtime.d.ts +1 -1
- package/dist/types/sdk/bus/prompt-reconciliation.d.ts +16 -5
- package/dist/types/sdk/bus/reconciliation-store.d.ts +113 -5
- package/dist/types/sdk/bus/session-control.d.ts +25 -1
- package/dist/types/sdk/bus/slack-conversation.d.ts +4 -0
- package/dist/types/sdk/bus/slack-daemon.d.ts +9 -17
- package/dist/types/sdk/bus/slack-live-provider.d.ts +3 -1
- package/dist/types/sdk/bus/slack-provider.d.ts +4 -0
- package/dist/types/sdk/bus/slack-thread-binding.d.ts +6 -40
- package/dist/types/sdk/bus/telegram-adoption-intent.d.ts +30 -104
- package/dist/types/sdk/bus/telegram-daemon-cli.d.ts +10 -0
- package/dist/types/sdk/bus/telegram-daemon-contract.d.ts +262 -19
- package/dist/types/sdk/bus/telegram-daemon-orphan-reap.d.ts +125 -0
- package/dist/types/sdk/bus/telegram-daemon-owner-registry.d.ts +22 -0
- package/dist/types/sdk/bus/telegram-daemon.d.ts +119 -310
- package/dist/types/sdk/bus/telegram-reference.d.ts +1 -47
- package/dist/types/sdk/bus/threaded-render.d.ts +1 -0
- package/dist/types/sdk/bus/topic-registry.d.ts +33 -17
- package/dist/types/sdk/cli/rows.d.ts +2 -11
- package/dist/types/sdk/cli/session-cli.d.ts +15 -25
- package/dist/types/sdk/client/client.d.ts +97 -1
- package/dist/types/sdk/host/control/dispatch.d.ts +0 -7
- package/dist/types/sdk/host/control/index.d.ts +1 -1
- package/dist/types/sdk/host/control/operations.d.ts +18 -5
- package/dist/types/sdk/host/control/runtime-gate.d.ts +19 -0
- package/dist/types/sdk/host/host.d.ts +15 -1
- package/dist/types/sdk/host/query/handlers.d.ts +5 -0
- package/dist/types/sdk/host/reverse-leases.d.ts +1 -1
- package/dist/types/sdk/host/session-runtime.d.ts +127 -7
- package/dist/types/sdk/host/types.d.ts +1 -1
- package/dist/types/sdk/host/websocket-transport.d.ts +1 -1
- package/dist/types/sdk/index.d.ts +2 -1
- package/dist/types/sdk/lifecycle/broker-client.d.ts +8 -0
- package/dist/types/sdk/lifecycle/client.d.ts +59 -0
- package/dist/types/sdk/lifecycle/index.d.ts +3 -0
- package/dist/types/sdk/lifecycle/service.d.ts +232 -0
- package/dist/types/sdk/mcp/server.d.ts +9 -6
- package/dist/types/sdk/prompt-deadline-lease.d.ts +43 -0
- package/dist/types/sdk/prompt-deadline-manager.d.ts +28 -0
- package/dist/types/sdk/prompt-status.d.ts +10 -3
- package/dist/types/sdk/protocol/operation-registry.d.ts +5 -0
- package/dist/types/sdk/receipt-state.d.ts +17 -0
- package/dist/types/sdk/reconciliation-extensions.d.ts +2 -0
- package/dist/types/sdk/router/index.d.ts +1 -0
- package/dist/types/sdk/router/session-router.d.ts +152 -0
- package/dist/types/sdk/session-list.d.ts +22 -0
- package/dist/types/sdk/session-reconnect.d.ts +43 -1
- package/dist/types/sdk/session.d.ts +34 -1
- package/dist/types/sdk/transport/serve-cli.d.ts +1 -4
- package/dist/types/session/account-inventory.d.ts +86 -0
- package/dist/types/session/agent-session.d.ts +145 -6
- package/dist/types/session/agent-storage.d.ts +10 -0
- package/dist/types/session/coordinator-tool-label.d.ts +28 -0
- package/dist/types/session/internal/managed-session-storage.d.ts +23 -4
- package/dist/types/session/messages.d.ts +1 -1
- package/dist/types/session/secure-token-file.d.ts +3 -0
- package/dist/types/session/session-manager.d.ts +40 -1
- package/dist/types/session/startup-auth-config.d.ts +44 -0
- package/dist/types/session/terminal-abort.d.ts +378 -0
- package/dist/types/session/yield-queue.d.ts +7 -0
- package/dist/types/session-import/claude.d.ts +26 -0
- package/dist/types/session-import/codex.d.ts +88 -0
- package/dist/types/session-import/command.d.ts +35 -0
- package/dist/types/session-import/detect.d.ts +22 -0
- package/dist/types/session-import/index.d.ts +7 -0
- package/dist/types/session-import/provider-codex.d.ts +22 -0
- package/dist/types/session-import/provider-service.d.ts +38 -0
- package/dist/types/session-import/redact.d.ts +23 -0
- package/dist/types/session-import/service.d.ts +47 -0
- package/dist/types/session-import/types.d.ts +120 -0
- package/dist/types/setup/paseo/check.d.ts +16 -0
- package/dist/types/setup/paseo/install-saga.d.ts +115 -0
- package/dist/types/setup/paseo/json-publisher.d.ts +76 -0
- package/dist/types/setup/paseo/orchestration-preferences.d.ts +24 -0
- package/dist/types/setup/paseo/paseo-ownership.d.ts +87 -0
- package/dist/types/setup/paseo/paseo-setup.d.ts +29 -0
- package/dist/types/setup/paseo/provider-config.d.ts +35 -0
- package/dist/types/setup/paseo/remove.d.ts +14 -0
- package/dist/types/setup/paseo/result-types.d.ts +59 -0
- package/dist/types/setup/paseo/setup-deps.d.ts +73 -0
- package/dist/types/setup/paseo/skills-bridge.d.ts +44 -0
- package/dist/types/skill-state/active-state.d.ts +5 -1
- package/dist/types/slash-commands/acp-builtins.d.ts +5 -1
- package/dist/types/slash-commands/builtin-registry.d.ts +2 -0
- package/dist/types/slash-commands/helpers/credential-switch.d.ts +12 -0
- package/dist/types/slash-commands/helpers/usage-report.d.ts +5 -6
- package/dist/types/slash-commands/types.d.ts +7 -1
- package/dist/types/task/executor.d.ts +10 -0
- package/dist/types/task/index.d.ts +3 -1
- package/dist/types/tools/ask-answer-registry.d.ts +6 -3
- package/dist/types/tools/bash-sleep-advisory.d.ts +14 -0
- package/dist/types/tools/bash.d.ts +2 -6
- package/dist/types/tools/browser/attach.d.ts +11 -0
- package/dist/types/tools/browser/launch.d.ts +20 -0
- package/dist/types/tools/browser/profile-discovery.d.ts +6 -0
- package/dist/types/tools/browser/render.d.ts +1 -0
- package/dist/types/tools/browser.d.ts +3 -1
- package/dist/types/tools/image-gen.d.ts +9 -2
- package/dist/types/tools/index.d.ts +8 -0
- package/dist/types/tools/monitor.d.ts +1 -1
- package/dist/types/tools/skill-discovery.d.ts +8 -1
- package/dist/types/tools/subagent.d.ts +2 -0
- package/dist/types/tools/ultragoal-ask-guard.d.ts +2 -2
- package/dist/types/utils/herdr-pane.d.ts +76 -0
- package/package.json +19 -9
- package/scripts/build-binary.ts +2 -1
- package/scripts/build-sdk-package-smoke.ts +2 -13
- package/scripts/capture-sticky-viewport-showcase.ts +0 -1
- package/scripts/compile-args.ts +2 -0
- package/scripts/generate-sdk-adapter-parity-manifest.ts +31 -16
- package/scripts/generate-sdk-operation-inventory.ts +28 -0
- package/scripts/generate-telegram-baseline-manifest.ts +1 -0
- package/scripts/generate-tool-catalog.ts +6 -4
- package/scripts/verify-gjc-sdk-canonicalization.ts +5 -39
- package/src/async/job-manager.ts +352 -17
- package/src/async/support.ts +25 -0
- package/src/autoresearch/dashboard.ts +28 -13
- package/src/capability/index.ts +3 -1
- package/src/capability/mcp.ts +6 -0
- package/src/capability/types.ts +6 -0
- package/src/cli/accounts-cli.ts +395 -0
- package/src/cli/args.ts +23 -0
- package/src/cli/auth-broker-cli.ts +136 -66
- package/src/cli/auth-gateway-cli.ts +94 -70
- package/src/cli/config-cli.ts +27 -2
- package/src/cli/crash-cli.ts +78 -0
- package/src/cli/customize-doctor.ts +1605 -0
- package/src/cli/daemon-cli.ts +12 -3
- package/src/cli/fast-help.ts +1 -0
- package/src/cli/mcp-cli.ts +128 -60
- package/src/cli/notify-cli.ts +8 -14
- package/src/cli/root-flags.ts +8 -0
- package/src/cli/setup-cli.ts +145 -0
- package/src/cli/skills-cli.ts +38 -2
- package/src/cli/update-cli.ts +167 -12
- package/src/cli.ts +4 -0
- package/src/commands/accounts.ts +71 -0
- package/src/commands/crash.ts +35 -0
- package/src/commands/customize.ts +84 -0
- package/src/commands/daemon.ts +2 -2
- package/src/commands/deep-interview.ts +2 -0
- package/src/commands/launch.ts +1 -0
- package/src/commands/mcp.ts +12 -7
- package/src/commands/ralplan.ts +2 -0
- package/src/commands/sdk.ts +65 -32
- package/src/commands/setup.ts +5 -0
- package/src/commands/skills.ts +14 -4
- package/src/commands/ultragoal.ts +10 -1
- package/src/commands/update.ts +26 -15
- package/src/config/atomic-yaml-patch-worker.ts +57 -0
- package/src/config/atomic-yaml-patch.ts +769 -29
- package/src/config/config-schema-version.ts +10 -0
- package/src/config/file-lock.ts +70 -1
- package/src/config/mcp-schema.json +52 -14
- package/src/config/model-profile-activation.ts +20 -1
- package/src/config/model-profiles.ts +29 -19
- package/src/config/model-registry.ts +132 -21
- package/src/config/models-config-schema.ts +1 -1
- package/src/config/settings-schema.ts +76 -6
- package/src/config/settings.ts +4038 -199
- package/src/config/skill-settings-defaults.ts +41 -3
- package/src/config/task-delegation.ts +87 -0
- package/src/config/update-channel.ts +23 -0
- package/src/coordinator-mcp/server.ts +377 -308
- package/src/crash/index-store.ts +723 -0
- package/src/crash/nudge.ts +89 -0
- package/src/crash/record-loader.ts +149 -0
- package/src/crash/report.ts +551 -0
- package/src/crash/sanitize.ts +129 -0
- package/src/cursor.ts +36 -10
- package/src/customization/import.ts +946 -0
- package/src/customization/index.ts +4 -0
- package/src/customization/inventory.ts +335 -0
- package/src/customization/mutations.ts +141 -0
- package/src/customization/types.ts +223 -0
- package/src/daemon/control-types.ts +8 -1
- package/src/daemon/operator-contract.ts +6 -6
- package/src/defaults/gjc/skills/deep-interview/SKILL.md +11 -22
- package/src/defaults/gjc/skills/ralplan/SKILL.md +36 -23
- package/src/defaults/gjc/skills/ultragoal/SKILL.md +16 -0
- package/src/discovery/claude-hooks.ts +38 -0
- package/src/discovery/claude.ts +142 -209
- package/src/discovery/codex-hooks.ts +38 -0
- package/src/discovery/codex.ts +132 -198
- package/src/discovery/helpers.ts +8 -1
- package/src/discovery/index.ts +2 -0
- package/src/discovery/mcp-compat.ts +234 -0
- package/src/discovery/mcp-json.ts +6 -0
- package/src/edit/renderer.ts +40 -0
- package/src/edit/streaming.ts +4 -2
- package/src/exec/bash-executor.ts +24 -20
- package/src/export/html/index.ts +51 -2
- package/src/extensibility/extensions/loader.ts +9 -1
- package/src/extensibility/extensions/runner.ts +17 -4
- package/src/extensibility/extensions/types.ts +31 -6
- package/src/extensibility/gjc-plugins/constrained-hooks.ts +33 -0
- package/src/extensibility/gjc-plugins/installer.ts +9 -5
- package/src/extensibility/gjc-plugins/observability.ts +8 -2
- package/src/extensibility/gjc-plugins/registry.ts +13 -2
- package/src/extensibility/gjc-plugins/runtime-adapters.ts +3 -1
- package/src/extensibility/gjc-plugins/schema.ts +222 -39
- package/src/extensibility/hooks/loader.ts +154 -10
- package/src/extensibility/runtime-skill-discovery.ts +257 -60
- package/src/extensibility/skill-management.ts +368 -0
- package/src/extensibility/skills.ts +52 -16
- package/src/gjc-runtime/deep-interview-runtime.ts +45 -61
- package/src/gjc-runtime/launch-worktree.ts +56 -2
- package/src/gjc-runtime/linux-proc.ts +7 -1
- package/src/gjc-runtime/ralplan-runtime.ts +100 -164
- package/src/gjc-runtime/session-state-lock.ts +992 -0
- package/src/gjc-runtime/session-state-sidecar.ts +644 -142
- package/src/gjc-runtime/state-writer.ts +39 -14
- package/src/gjc-runtime/tmux-owner-isolation.ts +5 -4
- package/src/gjc-runtime/ultragoal-guard.ts +11 -4
- package/src/gjc-runtime/ultragoal-runtime.ts +44 -41
- package/src/gjc-runtime/workflow-settings.ts +596 -0
- package/src/goals/tools/goal-tool.ts +6 -1
- package/src/hooks/events.ts +291 -0
- package/src/hooks/native-skill-hook.ts +4 -0
- package/src/hooks/normalize.ts +369 -0
- package/src/hooks/skill-state.ts +165 -46
- package/src/internal-urls/docs-index.generated.ts +40 -32
- package/src/main.ts +32 -5
- package/src/migrate/mcp-mapper.ts +25 -2
- package/src/modes/acp/abort-scope.ts +29 -0
- package/src/modes/acp/acp-agent.ts +423 -98
- package/src/modes/components/assistant-message.ts +6 -1
- package/src/modes/components/customization/customization-dashboard.ts +443 -0
- package/src/modes/components/customization/import-wizard.ts +372 -0
- package/src/modes/components/customization/index.ts +1 -0
- package/src/modes/components/gajae-pet-widget.ts +539 -213
- package/src/modes/components/irc-sidebar.ts +11 -0
- package/src/modes/components/iterm-pet-transport.ts +585 -0
- package/src/modes/components/oauth-selector.ts +277 -86
- package/src/modes/components/pet-capability.ts +39 -40
- package/src/modes/components/settings-selector.ts +9 -0
- package/src/modes/components/status-line/gh.ts +45 -1
- package/src/modes/components/status-line/segments.ts +16 -1
- package/src/modes/components/tool-status-header.ts +13 -3
- package/src/modes/controllers/command-controller.ts +20 -8
- package/src/modes/controllers/extension-ui-controller.ts +56 -257
- package/src/modes/controllers/input-controller.ts +10 -0
- package/src/modes/controllers/runtime-mcp-command-controller.ts +16 -3
- package/src/modes/controllers/selector-controller.ts +177 -72
- package/src/modes/controllers/stt-controller.ts +3 -3
- package/src/modes/interactive-mode.ts +88 -16
- package/src/modes/print-mode.ts +35 -6
- package/src/modes/runtime-init.ts +21 -68
- package/src/modes/types.ts +1 -0
- package/src/modes/utils/injected-user-submission.ts +25 -0
- package/src/modes/utils/terminal-bell.ts +15 -1
- package/src/prompts/agent-fragments/ralplan-persistence.md +1 -1
- package/src/prompts/agent-fragments/restricted-bash.md +1 -1
- package/src/prompts/agents/critic.md +1 -1
- package/src/prompts/system/rlm-research.md +1 -1
- package/src/prompts/system/system-prompt.md +0 -2
- package/src/prompts/tools/bash.md +7 -1
- package/src/prompts/tools/browser.md +1 -1
- package/src/prompts/tools/cron.md +6 -6
- package/src/prompts/tools/read.md +0 -2
- package/src/prompts/tools/skill-discovery.md +4 -2
- package/src/runtime-mcp/client.ts +427 -23
- package/src/runtime-mcp/config.ts +37 -5
- package/src/runtime-mcp/manager-pool.test.ts +56 -0
- package/src/runtime-mcp/manager.ts +52 -2
- package/src/runtime-mcp/oauth-discovery.ts +13 -0
- package/src/runtime-mcp/oauth-flow.ts +46 -1
- package/src/runtime-mcp/pool-key.ts +5 -1
- package/src/runtime-mcp/pool.test.ts +9 -0
- package/src/runtime-mcp/protocol.test.ts +353 -0
- package/src/runtime-mcp/protocol.ts +624 -0
- package/src/runtime-mcp/scope-config.ts +78 -0
- package/src/runtime-mcp/tool-bridge.ts +44 -10
- package/src/runtime-mcp/transports/http.ts +84 -13
- package/src/runtime-mcp/types.ts +123 -12
- package/src/sdk/acp/adapter.ts +328 -97
- package/src/sdk/broker/broker.ts +160 -741
- package/src/sdk/broker/ensure.ts +9 -1
- package/src/sdk/broker/lifecycle.ts +510 -116
- package/src/sdk/broker/operation-receipt-ledger.ts +11 -2
- package/src/sdk/broker/process-incarnation.ts +19 -0
- package/src/sdk/broker/session-index.ts +516 -117
- package/src/sdk/broker/startup-failure.ts +28 -5
- package/src/sdk/broker/transport.ts +1 -13
- package/src/sdk/bus/chat-daemon-cli.ts +4 -2
- package/src/sdk/bus/chat-daemon-control.ts +67 -6
- package/src/sdk/bus/chat-daemon-runtime.ts +183 -859
- package/src/sdk/bus/config.ts +13 -0
- package/src/sdk/bus/conversation-store.ts +59 -171
- package/src/sdk/bus/daemon-paths.ts +20 -0
- package/src/sdk/bus/discord-conversation.ts +2 -0
- package/src/sdk/bus/discord-daemon.ts +524 -126
- package/src/sdk/bus/discord-live-provider.ts +206 -79
- package/src/sdk/bus/existing-thread-readiness.ts +4 -97
- package/src/sdk/bus/inbound-reaction-ordering.ts +122 -0
- package/src/sdk/bus/index.ts +2480 -456
- package/src/sdk/bus/kind-aware-reconciliation.ts +204 -34
- package/src/sdk/bus/lifecycle-commands.ts +2 -2
- package/src/sdk/bus/managed-daemon.ts +2 -145
- package/src/sdk/bus/notification-service.ts +196 -0
- package/src/sdk/bus/operator-runtime.ts +1 -1
- package/src/sdk/bus/prompt-reconciliation.ts +24 -15
- package/src/sdk/bus/reconciliation-store.ts +553 -24
- package/src/sdk/bus/session-control.ts +49 -3
- package/src/sdk/bus/slack-conversation.ts +4 -0
- package/src/sdk/bus/slack-daemon.ts +733 -134
- package/src/sdk/bus/slack-live-provider.ts +65 -15
- package/src/sdk/bus/slack-provider.ts +4 -0
- package/src/sdk/bus/slack-thread-binding.ts +9 -104
- package/src/sdk/bus/telegram-adoption-intent.ts +299 -209
- package/src/sdk/bus/telegram-daemon-cli.ts +194 -7
- package/src/sdk/bus/telegram-daemon-contract.ts +265 -19
- package/src/sdk/bus/telegram-daemon-control.ts +3 -13
- package/src/sdk/bus/telegram-daemon-orphan-reap.ts +498 -0
- package/src/sdk/bus/telegram-daemon-owner-registry.ts +176 -0
- package/src/sdk/bus/telegram-daemon.ts +2552 -2280
- package/src/sdk/bus/telegram-reference.ts +1 -226
- package/src/sdk/bus/telegram-setup.ts +2 -2
- package/src/sdk/bus/threaded-render.ts +1 -0
- package/src/sdk/bus/topic-registry.ts +279 -146
- package/src/sdk/cli/rows.ts +2 -35
- package/src/sdk/cli/session-cli.ts +776 -700
- package/src/sdk/client/client.ts +892 -1
- package/src/sdk/host/control/dispatch.ts +93 -58
- package/src/sdk/host/control/index.ts +1 -1
- package/src/sdk/host/control/operations.ts +18 -10
- package/src/sdk/host/control/runtime-gate.ts +40 -0
- package/src/sdk/host/host.ts +63 -12
- package/src/sdk/host/query/handlers.ts +66 -7
- package/src/sdk/host/reverse-leases.ts +2 -2
- package/src/sdk/host/sdk-surface-parity.test.ts +1 -1
- package/src/sdk/host/session-runtime.test.ts +2787 -34
- package/src/sdk/host/session-runtime.ts +1489 -101
- package/src/sdk/host/surface-policy.ts +12 -8
- package/src/sdk/host/types.ts +1 -1
- package/src/sdk/host/websocket-transport.lifecycle.test.ts +31 -59
- package/src/sdk/host/websocket-transport.ts +85 -50
- package/src/sdk/index.ts +2 -1
- package/src/sdk/lifecycle/broker-client.ts +53 -0
- package/src/sdk/lifecycle/client.ts +234 -0
- package/src/sdk/lifecycle/index.ts +3 -0
- package/src/sdk/{bus/recent-activity.ts → lifecycle/recent-sessions.ts} +5 -2
- package/src/sdk/lifecycle/service.ts +720 -0
- package/src/sdk/mcp/server.ts +226 -188
- package/src/sdk/prompt-deadline-lease.ts +55 -0
- package/src/sdk/prompt-deadline-manager.ts +148 -0
- package/src/sdk/prompt-status.ts +11 -3
- package/src/sdk/protocol/operation-inventory.generated.json +272 -129
- package/src/sdk/protocol/operation-registry.ts +71 -8
- package/src/sdk/receipt-state.ts +43 -0
- package/src/sdk/reconciliation-extensions.ts +14 -0
- package/src/sdk/router/index.ts +1 -0
- package/src/sdk/router/session-router.ts +1658 -0
- package/src/sdk/session-list.ts +93 -0
- package/src/sdk/session-reconnect.ts +45 -1
- package/src/sdk/session.ts +716 -120
- package/src/sdk/transport/serve-cli.ts +18 -34
- package/src/session/account-inventory.ts +603 -0
- package/src/session/agent-session.ts +2857 -582
- package/src/session/agent-storage.ts +35 -0
- package/src/session/blob-store.ts +32 -1
- package/src/session/coordinator-tool-label.ts +40 -0
- package/src/session/internal/managed-session-scope.ts +4 -0
- package/src/session/internal/managed-session-storage.ts +173 -12
- package/src/session/messages.ts +1 -1
- package/src/session/secure-token-file.ts +80 -0
- package/src/session/session-manager.ts +730 -58
- package/src/session/session-storage.ts +25 -16
- package/src/session/startup-auth-config.ts +297 -0
- package/src/session/terminal-abort.ts +1253 -0
- package/src/session/yield-queue.ts +57 -15
- package/src/session-import/claude.ts +334 -0
- package/src/session-import/codex.ts +1033 -0
- package/src/session-import/command.ts +77 -0
- package/src/session-import/detect.ts +133 -0
- package/src/session-import/index.ts +7 -0
- package/src/session-import/provider-codex.ts +327 -0
- package/src/session-import/provider-service.ts +457 -0
- package/src/session-import/redact.ts +128 -0
- package/src/session-import/service.ts +1264 -0
- package/src/session-import/types.ts +148 -0
- package/src/setup/paseo/check.ts +213 -0
- package/src/setup/paseo/install-saga.ts +293 -0
- package/src/setup/paseo/json-publisher.ts +263 -0
- package/src/setup/paseo/orchestration-preferences.ts +86 -0
- package/src/setup/paseo/paseo-ownership.ts +224 -0
- package/src/setup/paseo/paseo-setup.ts +253 -0
- package/src/setup/paseo/provider-config.ts +139 -0
- package/src/setup/paseo/remove.ts +183 -0
- package/src/setup/paseo/result-types.ts +79 -0
- package/src/setup/paseo/setup-deps.ts +175 -0
- package/src/setup/paseo/skills-bridge.ts +260 -0
- package/src/skill-state/active-state.ts +21 -11
- package/src/slash-commands/acp-builtins.ts +9 -1
- package/src/slash-commands/builtin-registry.ts +98 -16
- package/src/slash-commands/helpers/credential-switch.ts +143 -0
- package/src/slash-commands/helpers/mcp.ts +9 -3
- package/src/slash-commands/helpers/usage-report.ts +61 -56
- package/src/slash-commands/types.ts +7 -2
- package/src/task/executor.ts +30 -11
- package/src/task/index.ts +66 -7
- package/src/task/render.ts +23 -9
- package/src/tools/ask-answer-registry.ts +23 -7
- package/src/tools/ask.ts +8 -4
- package/src/tools/bash-sleep-advisory.ts +115 -0
- package/src/tools/bash.ts +98 -18
- package/src/tools/browser/attach.ts +71 -3
- package/src/tools/browser/launch.ts +86 -13
- package/src/tools/browser/profile-discovery.ts +57 -7
- package/src/tools/browser/render.ts +8 -1
- package/src/tools/browser.ts +130 -21
- package/src/tools/computer.enforcement.test.ts +1 -1
- package/src/tools/computer.ts +3 -2
- package/src/tools/cron.ts +12 -1
- package/src/tools/image-gen.ts +27 -16
- package/src/tools/index.ts +8 -0
- package/src/tools/job.ts +33 -6
- package/src/tools/monitor.ts +41 -2
- package/src/tools/skill-discovery.ts +21 -29
- package/src/tools/subagent.ts +142 -24
- package/src/tools/tool-catalog.generated.ts +6 -6
- package/src/tools/ultragoal-ask-guard.ts +10 -3
- package/src/utils/herdr-pane.ts +345 -0
- package/src/utils/title-generator.ts +2 -0
- package/src/web/scrapers/index.ts +6 -4
- package/dist/types/cli/malloc-env-guard.test.d.ts +0 -1
- package/dist/types/defaults/gjc-defaults.test.d.ts +0 -1
- package/dist/types/memory-backend/lazy-loading.test.d.ts +0 -1
- package/dist/types/runtime/boot-ordering.test.d.ts +0 -1
- package/dist/types/runtime/lazy-service.test.d.ts +0 -1
- package/dist/types/runtime/network-prewarm-service.test.d.ts +0 -1
- package/dist/types/runtime/workspace-tree-service.test.d.ts +0 -1
- package/dist/types/runtime-mcp/config.test.d.ts +0 -1
- package/dist/types/runtime-mcp/http.test.d.ts +0 -1
- package/dist/types/runtime-mcp/manager-pool.test.d.ts +0 -1
- package/dist/types/runtime-mcp/pool-key.test.d.ts +0 -1
- package/dist/types/runtime-mcp/pool.test.d.ts +0 -1
- package/dist/types/sdk/bus/lifecycle-control-runtime.d.ts +0 -117
- package/dist/types/sdk/bus/lifecycle-orchestrator.d.ts +0 -141
- package/dist/types/sdk/bus/telegram-cli.d.ts +0 -31
- package/dist/types/sdk/elevation/allowlist.d.ts +0 -20
- package/dist/types/sdk/elevation/audit.d.ts +0 -93
- package/dist/types/sdk/elevation/capability.d.ts +0 -3
- package/dist/types/sdk/elevation/digest.d.ts +0 -72
- package/dist/types/sdk/elevation/dispatch-receipt.d.ts +0 -85
- package/dist/types/sdk/elevation/grant-ledger.d.ts +0 -163
- package/dist/types/sdk/elevation/owner.d.ts +0 -48
- package/dist/types/sdk/host/import-graph.test.d.ts +0 -1
- package/dist/types/sdk/host/sdk-surface-parity.test.d.ts +0 -1
- package/dist/types/sdk/host/session-runtime.test.d.ts +0 -1
- package/dist/types/sdk/host/websocket-transport.lifecycle.test.d.ts +0 -1
- package/dist/types/session/auth-broker-config.d.ts +0 -13
- package/dist/types/session/heap-eviction-artifacts.test.d.ts +0 -1
- package/dist/types/skills/skills.test.d.ts +0 -1
- package/dist/types/slash-commands/notify-command.test.d.ts +0 -1
- package/dist/types/task/token-log.test.d.ts +0 -1
- package/dist/types/tools/computer.enforcement.test.d.ts +0 -1
- package/dist/types/tools/descriptors.test.d.ts +0 -1
- package/scripts/g005-daemon-smoke.ts +0 -180
- package/scripts/g011-daemon-path-smoke.ts +0 -153
- package/src/sdk/bus/lifecycle-control-runtime.ts +0 -1733
- package/src/sdk/bus/lifecycle-orchestrator.ts +0 -489
- package/src/sdk/bus/telegram-cli.ts +0 -212
- package/src/sdk/elevation/allowlist.ts +0 -54
- package/src/sdk/elevation/audit.ts +0 -208
- package/src/sdk/elevation/capability.ts +0 -41
- package/src/sdk/elevation/digest.ts +0 -129
- package/src/sdk/elevation/dispatch-receipt.ts +0 -184
- package/src/sdk/elevation/grant-ledger.ts +0 -1142
- package/src/sdk/elevation/owner.ts +0 -109
- package/src/session/auth-broker-config.ts +0 -109
- /package/dist/types/{ai-core-import-gate.test.d.ts → discovery/claude-hooks.d.ts} +0 -0
- /package/dist/types/{cli/fixture-report.test.d.ts → discovery/codex-hooks.d.ts} +0 -0
- /package/dist/types/sdk/{bus/recent-activity.d.ts → lifecycle/recent-sessions.d.ts} +0 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Container } from "@gajae-code/tui";
|
|
2
|
+
import type { GjcScope, ImportPreview, ImportResult } from "../../../customization/types";
|
|
3
|
+
type WizardStep = "product" | "sourceScope" | "surfaces" | "collision" | "preview" | "result";
|
|
4
|
+
export declare class ImportWizard extends Container {
|
|
5
|
+
#private;
|
|
6
|
+
/** Called when the wizard finishes or is cancelled; `applied` is true only when an import succeeded. */
|
|
7
|
+
onClose: ((applied: boolean) => void) | undefined;
|
|
8
|
+
onRequestRender: (() => void) | undefined;
|
|
9
|
+
constructor(cwd: string, destinationScope: GjcScope, homeDir?: string);
|
|
10
|
+
/** Current step (test-visible). */
|
|
11
|
+
get step(): WizardStep;
|
|
12
|
+
/** Last built preview DTO — redacted and serialization-safe (test-visible). */
|
|
13
|
+
get preview(): ImportPreview | null;
|
|
14
|
+
/** Last apply result (test-visible). */
|
|
15
|
+
get result(): ImportResult | null;
|
|
16
|
+
/** Whether the wizard currently shows an attached selection list (test-visible). */
|
|
17
|
+
get hasVisibleSelector(): boolean;
|
|
18
|
+
handleInput(keyData: string): void;
|
|
19
|
+
render(width: number): string[];
|
|
20
|
+
}
|
|
21
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./customization-dashboard";
|
|
@@ -2,11 +2,7 @@ import { type Component, type Container, type PetMode, type PetSkinId, type TUI
|
|
|
2
2
|
import type { CustomEditor } from "./custom-editor";
|
|
3
3
|
/** Re-exported from the tui skin registry so widget-relative imports stay valid. */
|
|
4
4
|
export type { PetMode, PetSkinId };
|
|
5
|
-
/**
|
|
6
|
-
* Wraps the composer editor, reserving a right-side area beside it where the
|
|
7
|
-
* real-pixel pet is drawn. The editor just renders narrower; the pet pixels
|
|
8
|
-
* are emitted separately as an absolute-positioned overlay.
|
|
9
|
-
*/
|
|
5
|
+
/** Reserve a right-side area beside the composer where the pixel pet is drawn. */
|
|
10
6
|
export declare class PetFramedEditor implements Component {
|
|
11
7
|
#private;
|
|
12
8
|
constructor(editor: CustomEditor);
|
|
@@ -15,20 +11,7 @@ export declare class PetFramedEditor implements Component {
|
|
|
15
11
|
invalidate(): void;
|
|
16
12
|
render(width: number): string[];
|
|
17
13
|
}
|
|
18
|
-
/**
|
|
19
|
-
* The gajae pet: a real-pixel sprite living in a reserved area beside the
|
|
20
|
-
* composer. It is nearest-neighbor scaled to the two terminal rows occupied
|
|
21
|
-
* by an empty one-line composer and lifted one row so its feet meet the input
|
|
22
|
-
* box's bottom edge.
|
|
23
|
-
*
|
|
24
|
-
* Rendering has two paths that share one payload builder:
|
|
25
|
-
* - a post-render emitter re-draws the sprite after every TUI write (line
|
|
26
|
-
* renders clear the pet cells, so the overlay must be re-applied), and
|
|
27
|
-
* - frame advances write the payload directly to the terminal, because the
|
|
28
|
-
* TUI skips writes entirely when no component line changed.
|
|
29
|
-
*
|
|
30
|
-
* Requires a sixel- or kitty-graphics terminal (`pixelProtocol()`).
|
|
31
|
-
*/
|
|
14
|
+
/** The gajae pet pixel sprite and protocol-specific rendering lifecycle. */
|
|
32
15
|
export declare class GajaePetWidget {
|
|
33
16
|
#private;
|
|
34
17
|
constructor(options: {
|
|
@@ -37,24 +20,19 @@ export declare class GajaePetWidget {
|
|
|
37
20
|
editorContainer: Container;
|
|
38
21
|
floorContainer: Container;
|
|
39
22
|
isWorking: () => boolean;
|
|
40
|
-
/** Rows rendered below the composer box (pet floor + hook widgets). */
|
|
41
23
|
getComposerBottomOffset: () => number;
|
|
42
|
-
|
|
43
|
-
|
|
24
|
+
syncManagedItermCursor: (row: number, column: number) => Promise<boolean>;
|
|
25
|
+
forcePixelProtocol?: "sixel" | "kitty";
|
|
44
26
|
autoFlexGapMs?: [number, number] | null;
|
|
45
27
|
});
|
|
46
|
-
|
|
47
|
-
static pixelProtocol(): "sixel" | "kitty" | "iterm2" | null;
|
|
28
|
+
static pixelProtocol(): "sixel" | "kitty" | "iterm" | null;
|
|
48
29
|
get mode(): PetMode;
|
|
49
30
|
get isFlexing(): boolean;
|
|
50
|
-
setMode(mode:
|
|
51
|
-
|
|
52
|
-
* composer editor (that would tear down the open overlay). After a short idle
|
|
53
|
-
* eye-roll it fires the signature burst once (RedGajae flex, BlueGajae para-para
|
|
54
|
-
* then sob) so the selector demos the animation instead of waiting the random gap. */
|
|
31
|
+
setMode(mode: PetMode): void;
|
|
32
|
+
suspendItermCapability(): Promise<void>;
|
|
55
33
|
previewMode(mode: PetMode): void;
|
|
56
34
|
commitPreviewMode(mode: PetMode): void;
|
|
57
35
|
dispose(): void;
|
|
58
|
-
|
|
36
|
+
disposeAsync(): Promise<void>;
|
|
59
37
|
remountComposer(): void;
|
|
60
38
|
}
|
|
@@ -77,6 +77,7 @@ export declare class IrcSplitViewComponent implements ViewportAnchorProvider {
|
|
|
77
77
|
private readonly ledger;
|
|
78
78
|
private readonly componentTheme;
|
|
79
79
|
constructor(leftPane: Component, ledger: IrcObservationLedger, componentTheme: IrcSidebarThemeSource);
|
|
80
|
+
getRenderRevision(): bigint;
|
|
80
81
|
get visible(): boolean;
|
|
81
82
|
effectiveSidebarVisible(width?: number): boolean;
|
|
82
83
|
setVisible(visible: boolean): void;
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
export declare const PET_CAPABILITY_DRAIN_MAX_MS = 100;
|
|
2
|
+
export declare const PET_CAPABILITY_QUIESCENCE_MS = 25;
|
|
3
|
+
export declare const PET_CAPABILITY_QUERY_TIMEOUT_MS = 1000;
|
|
4
|
+
export declare const PET_TOPOLOGY_POLL_MS = 250;
|
|
5
|
+
export type PetTransportMode = "direct" | "managed";
|
|
6
|
+
export type PetUnavailableReason = "not-iterm2" | "tty-unavailable" | "missing-f" | "invalid-f" | "probe-timeout" | "topology-ineligible" | "topology-lost" | "zero-client-recovery" | "cleanup-failed";
|
|
7
|
+
export type PetTransportAvailability = Readonly<{
|
|
8
|
+
available: boolean;
|
|
9
|
+
mode: PetTransportMode;
|
|
10
|
+
reason?: PetUnavailableReason;
|
|
11
|
+
epoch: number;
|
|
12
|
+
}>;
|
|
13
|
+
export type PetTransportClock = Readonly<{
|
|
14
|
+
now(): number;
|
|
15
|
+
setTimeout(callback: () => void, ms: number): unknown;
|
|
16
|
+
clearTimeout(handle: unknown): void;
|
|
17
|
+
}>;
|
|
18
|
+
export type PetTransportInput = Readonly<{
|
|
19
|
+
drain(maxMs: number, quiescenceMs: number): Promise<void>;
|
|
20
|
+
onData(callback: (data: Uint8Array | string) => PetInputResult | undefined): () => void;
|
|
21
|
+
}>;
|
|
22
|
+
export type PetInputResult = Readonly<{
|
|
23
|
+
consume?: true;
|
|
24
|
+
data?: string;
|
|
25
|
+
}>;
|
|
26
|
+
export type NativePetUi = Readonly<{
|
|
27
|
+
drainPetProbeInput?(maxMs: number, quiescenceMs: number): Promise<void>;
|
|
28
|
+
drainInput(maxMs: number, quiescenceMs: number): Promise<void>;
|
|
29
|
+
addInputListener(callback: (data: string | Uint8Array) => unknown): () => void;
|
|
30
|
+
submitTerminalOutput(request: Readonly<{
|
|
31
|
+
operation: Readonly<{
|
|
32
|
+
type: "raster-probe";
|
|
33
|
+
bytes: Uint8Array;
|
|
34
|
+
}>;
|
|
35
|
+
}>): Promise<Readonly<{
|
|
36
|
+
status?: string;
|
|
37
|
+
written?: number;
|
|
38
|
+
}>>;
|
|
39
|
+
notifyTerminalLifecycle(event: Readonly<{
|
|
40
|
+
kind: "availability-restored" | "explicit-cleanup";
|
|
41
|
+
source: "transport";
|
|
42
|
+
terminalGeneration: number;
|
|
43
|
+
}>): Promise<unknown>;
|
|
44
|
+
readonly terminalGeneration: number;
|
|
45
|
+
}>;
|
|
46
|
+
export type PetTransportOutput = Readonly<{
|
|
47
|
+
write(bytes: Uint8Array): Promise<Readonly<{
|
|
48
|
+
status: "written" | "failed";
|
|
49
|
+
}>>;
|
|
50
|
+
notifyLifecycle?(event: Readonly<{
|
|
51
|
+
kind: "availability-restored" | "explicit-cleanup";
|
|
52
|
+
terminalGeneration: number;
|
|
53
|
+
}>): Promise<unknown>;
|
|
54
|
+
}>;
|
|
55
|
+
export type PetTmuxResult = Readonly<{
|
|
56
|
+
status: number;
|
|
57
|
+
stdout: string;
|
|
58
|
+
stderr?: string;
|
|
59
|
+
}>;
|
|
60
|
+
export type PetTmuxRunner = (argv: readonly string[]) => Promise<PetTmuxResult | string>;
|
|
61
|
+
export type PetTmuxTopology = Readonly<{
|
|
62
|
+
clients: number;
|
|
63
|
+
paneId?: string;
|
|
64
|
+
ownedPaneId?: string;
|
|
65
|
+
clientId?: string;
|
|
66
|
+
clientVersion?: string;
|
|
67
|
+
}>;
|
|
68
|
+
export declare function hasItermFileCapability(v: Uint8Array | string): boolean;
|
|
69
|
+
export declare function consumeCapabilityInput(callback: (data: Uint8Array | string) => void): (data: string | Uint8Array) => PetInputResult | undefined;
|
|
70
|
+
export declare function capabilityProbe(): NodeJS.NonSharedUint8Array;
|
|
71
|
+
export declare function isItermCandidate(env?: NodeJS.ProcessEnv, tty?: boolean): boolean;
|
|
72
|
+
export declare function createNativePetTransport(o: {
|
|
73
|
+
ui: NativePetUi;
|
|
74
|
+
env?: NodeJS.ProcessEnv;
|
|
75
|
+
topology?: () => Promise<PetTmuxTopology>;
|
|
76
|
+
}): ItermPetTransport | undefined;
|
|
77
|
+
export declare class ItermPetTransport {
|
|
78
|
+
#private;
|
|
79
|
+
constructor(o: Readonly<{
|
|
80
|
+
mode?: PetTransportMode;
|
|
81
|
+
ttyCandidate?: boolean;
|
|
82
|
+
clock: PetTransportClock;
|
|
83
|
+
input: PetTransportInput;
|
|
84
|
+
output: PetTransportOutput;
|
|
85
|
+
tmux?: PetTmuxRunner;
|
|
86
|
+
ownedPaneId?: string;
|
|
87
|
+
paneId?: string;
|
|
88
|
+
sessionTarget?: string;
|
|
89
|
+
topology?: () => Promise<PetTmuxTopology>;
|
|
90
|
+
expectedClientId?: string;
|
|
91
|
+
}>);
|
|
92
|
+
get availability(): {
|
|
93
|
+
available: boolean;
|
|
94
|
+
mode: PetTransportMode;
|
|
95
|
+
reason: PetUnavailableReason | undefined;
|
|
96
|
+
epoch: number;
|
|
97
|
+
};
|
|
98
|
+
refreshManagedClient(row: number, column: number): Promise<boolean>;
|
|
99
|
+
subscribe(cb: (a: PetTransportAvailability) => void): () => boolean;
|
|
100
|
+
probe(): Promise<Readonly<{
|
|
101
|
+
available: boolean;
|
|
102
|
+
mode: PetTransportMode;
|
|
103
|
+
reason?: PetUnavailableReason;
|
|
104
|
+
epoch: number;
|
|
105
|
+
}>>;
|
|
106
|
+
retry(): Promise<Readonly<{
|
|
107
|
+
available: boolean;
|
|
108
|
+
mode: PetTransportMode;
|
|
109
|
+
reason?: PetUnavailableReason;
|
|
110
|
+
epoch: number;
|
|
111
|
+
}>>;
|
|
112
|
+
revoke(reason?: PetUnavailableReason): Promise<PetTransportAvailability>;
|
|
113
|
+
inspectManagedTopology(): Promise<Readonly<{
|
|
114
|
+
available: boolean;
|
|
115
|
+
mode: PetTransportMode;
|
|
116
|
+
reason?: PetUnavailableReason;
|
|
117
|
+
epoch: number;
|
|
118
|
+
}>>;
|
|
119
|
+
startManagedPolling(): void;
|
|
120
|
+
stopManagedPolling(): void;
|
|
121
|
+
dispose(): Promise<void>;
|
|
122
|
+
}
|
|
@@ -1,16 +1,22 @@
|
|
|
1
|
+
import type { AuthCredentialSelector, CredentialRemovalTarget } from "@gajae-code/ai/core";
|
|
1
2
|
import { Container } from "@gajae-code/tui";
|
|
2
3
|
import type { AuthStorage } from "../../session/auth-storage";
|
|
3
4
|
import type { ImportableCredential } from "../../setup/credential-import";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
export interface OAuthSelectorAccountOptions {
|
|
6
|
+
accountProviderId?: string;
|
|
7
|
+
onAccountSelect?: (selector: AuthCredentialSelector) => void | Promise<void>;
|
|
8
|
+
onAutoSelect?: () => void | Promise<void>;
|
|
9
|
+
onAddAccount?: () => void | Promise<void>;
|
|
10
|
+
onAccountRemove?: (targets: readonly CredentialRemovalTarget[]) => void | Promise<void>;
|
|
11
|
+
}
|
|
12
|
+
/** Component that renders an OAuth provider selector or a provider-scoped account selector. */
|
|
7
13
|
export declare class OAuthSelectorComponent extends Container {
|
|
8
14
|
#private;
|
|
9
15
|
constructor(mode: "login" | "logout", authStorage: AuthStorage, onSelect: (providerId: string) => void, onCancel: () => void, options?: {
|
|
10
16
|
validateAuth?: (providerId: string) => Promise<boolean>;
|
|
11
17
|
requestRender?: () => void;
|
|
12
18
|
externalCredentialCandidates?: ImportableCredential[];
|
|
13
|
-
});
|
|
19
|
+
} & Partial<OAuthSelectorAccountOptions>);
|
|
14
20
|
stopValidation(): void;
|
|
15
21
|
dispose(): void;
|
|
16
22
|
handleInput(keyData: string): void;
|
|
@@ -1,34 +1,20 @@
|
|
|
1
1
|
import { type SelectItem } from "@gajae-code/tui";
|
|
2
|
-
|
|
3
|
-
export
|
|
4
|
-
export declare const
|
|
5
|
-
export declare const
|
|
2
|
+
import type { PetTransportAvailability } from "./iterm-pet-transport";
|
|
3
|
+
export type PetPixelProtocol = "sixel" | "kitty" | "iterm";
|
|
4
|
+
export declare const PET_UNAVAILABLE_DESCRIPTION = "Unavailable: requires compatible Kitty or Sixel overlay rendering";
|
|
5
|
+
export declare const PET_SAVED_UNAVAILABLE_DESCRIPTION = "Saved, unavailable \u2014 requires compatible Kitty or Sixel overlay rendering";
|
|
6
|
+
export declare const PET_UNAVAILABLE_WARNING = "\u26A0 Pets aren\u2019t available in this terminal. Its image support isn\u2019t compatible with Gajae Pet\u2019s overlay rendering yet. Try Kitty, Ghostty, WezTerm, or a terminal with compatible Sixel support.";
|
|
6
7
|
export declare function getPetUnavailableWarning(env?: NodeJS.ProcessEnv): string;
|
|
7
|
-
export declare function
|
|
8
|
+
export declare function subscribeVerifiedItermPetAvailability(callback: (availability: PetTransportAvailability | undefined) => void): () => void;
|
|
9
|
+
export declare function setVerifiedItermPetAvailability(availability: PetTransportAvailability | undefined): void;
|
|
10
|
+
export declare function getItermPetAvailability(): PetTransportAvailability | undefined;
|
|
11
|
+
export declare function getVerifiedItermPetAvailability(): PetTransportAvailability | undefined;
|
|
12
|
+
export declare function getItermPetUnavailableReason(): string | undefined;
|
|
13
|
+
export declare function getPetPixelProtocol(): PetPixelProtocol | null;
|
|
8
14
|
export declare function isPetAvailable(): boolean;
|
|
9
15
|
export declare function createPetSelectItems(options: ReadonlyArray<SelectItem>, currentValue: string, available: boolean): SelectItem[];
|
|
10
|
-
/**
|
|
11
|
-
* Grace period before declaring the terminal pet-incapable at startup. The
|
|
12
|
-
* asynchronous Sixel capability probe starts inside `TUI.start()` and answers
|
|
13
|
-
* within its own 250 ms deadline; this margin covers probe scheduling so a
|
|
14
|
-
* supported terminal is never told it is incompatible while the probe is
|
|
15
|
-
* still in flight.
|
|
16
|
-
*/
|
|
17
16
|
export declare const PET_CAPABILITY_SETTLE_MS = 1000;
|
|
18
|
-
/**
|
|
19
|
-
* Whether the asynchronous startup Sixel capability probe may still enable
|
|
20
|
-
* graphics for this session, meaning current unavailability is not final.
|
|
21
|
-
*/
|
|
22
17
|
export declare function isPetCapabilityProbePending(env?: NodeJS.ProcessEnv, platform?: NodeJS.Platform): boolean;
|
|
23
|
-
/**
|
|
24
|
-
* Deliver the pet-unavailable startup warning only once the capability
|
|
25
|
-
* question is settled. With no probe pending, unavailability is final and
|
|
26
|
-
* `onUnavailable` fires immediately. While a probe may still enable
|
|
27
|
-
* graphics, the warning is deferred: a protocol-change event cancels it (the
|
|
28
|
-
* saved pet re-applies through the existing subscription), and only the
|
|
29
|
-
* settle deadline passing with the terminal still unavailable emits it.
|
|
30
|
-
* Returns a disposer that cancels the pending decision.
|
|
31
|
-
*/
|
|
32
18
|
export declare function warnWhenPetCapabilitySettled(options: {
|
|
33
19
|
probePending: boolean;
|
|
34
20
|
isAvailable?: () => boolean;
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import { type RunGh } from "../../../utils/gh";
|
|
2
|
-
|
|
2
|
+
type CurrentPr = {
|
|
3
3
|
number: number;
|
|
4
4
|
url: string;
|
|
5
|
-
} | null
|
|
5
|
+
} | null;
|
|
6
|
+
export declare function lookupCurrentPr(runGh?: RunGh): Promise<CurrentPr>;
|
|
7
|
+
export declare function lookupCurrentPrCached(cacheKey: string, runGh?: RunGh, now?: () => number): Promise<CurrentPr>;
|
|
8
|
+
export declare function clearCurrentPrCache(): void;
|
|
9
|
+
export {};
|
|
@@ -2,7 +2,7 @@ import { type Component, type TUI } from "@gajae-code/tui";
|
|
|
2
2
|
import { KeybindingsManager } from "../../config/keybindings";
|
|
3
3
|
import type { ExtensionUIContext, ExtensionUIDialogOptions, ExtensionWidgetContent, ExtensionWidgetOptions, TerminalInputHandler } from "../../extensibility/extensions";
|
|
4
4
|
import { type Theme } from "../../modes/theme/theme";
|
|
5
|
-
import {
|
|
5
|
+
import type { InteractiveModeContext } from "../../modes/types";
|
|
6
6
|
export declare class ExtensionUiController {
|
|
7
7
|
#private;
|
|
8
8
|
private ctx;
|
|
@@ -5,7 +5,7 @@ import { type InteractiveModeContext, type OAuthSelectorOptions } from "../../mo
|
|
|
5
5
|
import { getCurrentTelegramActivationMarker, getNotificationConfig, maskToken } from "../../sdk/bus/config";
|
|
6
6
|
import { type NotificationProviderRuntimeAuthority, proposedTelegramIdentity, reconcileCommittedTelegramConfiguration, removeTelegramConfiguration, saveTelegramInactive } from "../../sdk/bus/notification-orchestration";
|
|
7
7
|
import { buildNotificationStatusReport, checkNotificationHealth, recoverNotifications, sanitizeDiagnostic, sendNotificationTest } from "../../sdk/bus/notification-service";
|
|
8
|
-
import { ensureTelegramDaemonRunningDetailed,
|
|
8
|
+
import { ensureTelegramDaemonRunningDetailed, resolveTelegramSetupPreflight } from "../../sdk/bus/telegram-daemon";
|
|
9
9
|
import { runTelegramSetup } from "../../sdk/bus/telegram-setup";
|
|
10
10
|
import { type CredentialAutoImportStateStore } from "../../setup/credential-auto-import";
|
|
11
11
|
import { type CommandPaletteAction } from "../components/command-palette";
|
|
@@ -51,13 +51,6 @@ export interface NotificationsEditorOperationDependencies {
|
|
|
51
51
|
reconcileCommittedTelegramConfiguration: typeof reconcileCommittedTelegramConfiguration;
|
|
52
52
|
saveTelegramInactive: typeof saveTelegramInactive;
|
|
53
53
|
removeTelegramConfiguration: typeof removeTelegramConfiguration;
|
|
54
|
-
readNotificationRootRegistration: typeof readNotificationRootRegistration;
|
|
55
|
-
unregisterNotificationRoot: typeof unregisterNotificationRoot;
|
|
56
|
-
stopTelegramDaemonIfRootRegistryFenceMatches(input: {
|
|
57
|
-
settings: Settings;
|
|
58
|
-
registryFingerprint: string;
|
|
59
|
-
stop: () => Promise<TelegramDaemonStopResult>;
|
|
60
|
-
}): Promise<boolean>;
|
|
61
54
|
reloadTelegramDaemon(settings: Settings): Promise<{
|
|
62
55
|
ok: boolean;
|
|
63
56
|
message: string;
|
|
@@ -103,6 +96,12 @@ export declare class SelectorController {
|
|
|
103
96
|
* Replaces /status with a unified view of all providers and extensions.
|
|
104
97
|
*/
|
|
105
98
|
showExtensionsDashboard(): Promise<void>;
|
|
99
|
+
/**
|
|
100
|
+
* Show the `/extensions` umbrella local-customization dashboard (skills,
|
|
101
|
+
* hooks, MCPs, import) — a separate surface from the provider-focused
|
|
102
|
+
* Extension Control Center above (issue #4291).
|
|
103
|
+
*/
|
|
104
|
+
showCustomizationDashboard(): Promise<void>;
|
|
106
105
|
/**
|
|
107
106
|
* Show the Agent Control Center dashboard.
|
|
108
107
|
*/
|
|
@@ -261,6 +261,7 @@ export declare class InteractiveMode implements InteractiveModeContext {
|
|
|
261
261
|
showPetSelector(): void;
|
|
262
262
|
showHistorySearch(): Promise<void>;
|
|
263
263
|
showExtensionsDashboard(): void;
|
|
264
|
+
showCustomizationDashboard(): void;
|
|
264
265
|
showAgentsDashboard(): void;
|
|
265
266
|
showModelSelector(options?: {
|
|
266
267
|
temporaryOnly?: boolean;
|
|
@@ -302,6 +302,7 @@ export interface InteractiveModeContext {
|
|
|
302
302
|
showPetSelector(): void;
|
|
303
303
|
showHistorySearch(): Promise<void>;
|
|
304
304
|
showExtensionsDashboard(): void;
|
|
305
|
+
showCustomizationDashboard(): void;
|
|
305
306
|
showAgentsDashboard(): void;
|
|
306
307
|
showModelSelector(options?: {
|
|
307
308
|
temporaryOnly?: boolean;
|
|
@@ -6,6 +6,16 @@ import type { InteractiveModeContext } from "../types";
|
|
|
6
6
|
* `AgentSession.sendUserMessage` (text parts joined with "\n") so the resulting
|
|
7
7
|
* text matches the eventual user `message_start` payload.
|
|
8
8
|
*/
|
|
9
|
+
/**
|
|
10
|
+
* Validate extension `sendUserMessage` content at the owning interactive
|
|
11
|
+
* boundary, before session delivery and UI bookkeeping. Returns a typed
|
|
12
|
+
* `invalid_input` Error when the content container or any array element is
|
|
13
|
+
* absent/null/malformed — exactly the shapes that would make
|
|
14
|
+
* `normalizeInjectedUserContent`'s `for-of` dereference (`part.type`) throw an
|
|
15
|
+
* untyped TypeError synchronously before the caller's `send.catch` is attached
|
|
16
|
+
* (unhandled rejection → resident crash).
|
|
17
|
+
*/
|
|
18
|
+
export declare function extensionUserMessageContentError(content: string | (TextContent | ImageContent)[]): Error | undefined;
|
|
9
19
|
export declare function normalizeInjectedUserContent(content: string | (TextContent | ImageContent)[]): {
|
|
10
20
|
text: string;
|
|
11
21
|
images: ImageContent[];
|
|
@@ -15,6 +15,13 @@ export interface LoadMCPConfigsOptions {
|
|
|
15
15
|
filterBrowser?: boolean;
|
|
16
16
|
/** Only include startup-eligible servers; exact-config sessions always enforce autoload !== false. */
|
|
17
17
|
autoloadOnly?: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Restrict discovery to GJC's own native config (`.gjc/` project and
|
|
20
|
+
* `~/.gjc/agent/` user scopes). Conventional standalone sessions use this
|
|
21
|
+
* mode: Claude Code/Codex project/global MCP files are explicit import
|
|
22
|
+
* sources into `.gjc`, not implicit competing runtime authorities.
|
|
23
|
+
*/
|
|
24
|
+
nativeOnly?: boolean;
|
|
18
25
|
/** Load only this explicit MCP config file. */
|
|
19
26
|
configPath?: string;
|
|
20
27
|
}
|
|
@@ -28,6 +35,8 @@ export interface LoadMCPConfigsResult {
|
|
|
28
35
|
sources: Record<string, SourceMeta>;
|
|
29
36
|
/** Whether the explicit configuration was unavailable or contained invalid entries. */
|
|
30
37
|
configurationWarning: boolean;
|
|
38
|
+
/** Provider warnings surfaced during discovery (parse/skip diagnostics). */
|
|
39
|
+
warnings: string[];
|
|
31
40
|
}
|
|
32
41
|
/**
|
|
33
42
|
* Load all MCP server configs from standard locations.
|
|
@@ -9,9 +9,10 @@ import type { SourceMeta } from "../capability/types";
|
|
|
9
9
|
import type { CustomTool } from "../extensibility/custom-tools/types";
|
|
10
10
|
import type { AuthStorage } from "../session/auth-storage";
|
|
11
11
|
import { MCPConnectionPool, type MCPPoolLease } from "./pool";
|
|
12
|
+
import type { MCPProtocolObservation } from "./protocol";
|
|
12
13
|
import type { MCPToolDetails } from "./tool-bridge";
|
|
13
14
|
import type { MCPToolCache } from "./tool-cache";
|
|
14
|
-
import type { MCPGetPromptResult, MCPPrompt, MCPRequestOptions, MCPResource, MCPResourceReadResult, MCPResourceTemplate, MCPServerConfig, MCPServerConnection } from "./types";
|
|
15
|
+
import type { MCPGetPromptResult, MCPInputRequestHandler, MCPPrompt, MCPRequestOptions, MCPResource, MCPResourceReadResult, MCPResourceTemplate, MCPServerConfig, MCPServerConnection } from "./types";
|
|
15
16
|
export declare function resolveStartupTimeoutMs(configs: MCPServerConfig[], maxStartupTimeoutMs?: number): number;
|
|
16
17
|
export declare function resolveExactConfigStartupTimeoutMs(configs: MCPServerConfig[]): number;
|
|
17
18
|
export declare class MCPManagerLifecycleError extends Error {
|
|
@@ -54,6 +55,12 @@ export interface MCPDiscoverOptions {
|
|
|
54
55
|
filterBrowser?: boolean;
|
|
55
56
|
/** Only connect servers with autoload !== false (default: false) */
|
|
56
57
|
autoloadOnly?: boolean;
|
|
58
|
+
/**
|
|
59
|
+
* Restrict discovery to GJC's native `.gjc` scopes (user + project).
|
|
60
|
+
* Runtime MCP authority for GJC sessions; Claude Code/Codex files are
|
|
61
|
+
* explicit import sources into `.gjc`, not implicit runtime authorities.
|
|
62
|
+
*/
|
|
63
|
+
nativeOnly?: boolean;
|
|
57
64
|
/** Called when starting to connect to servers */
|
|
58
65
|
onConnecting?: (serverNames: string[]) => void;
|
|
59
66
|
/** Load only this explicit MCP config file. */
|
|
@@ -125,6 +132,13 @@ export declare class MCPManager {
|
|
|
125
132
|
* Set the auth storage for resolving OAuth credentials.
|
|
126
133
|
*/
|
|
127
134
|
setAuthStorage(authStorage: AuthStorage): void;
|
|
135
|
+
/**
|
|
136
|
+
* Register the handler for modern MRTR `input_required` results (structured
|
|
137
|
+
* elicitation/roots/sampling input requests). Runtimes with an interactive
|
|
138
|
+
* question surface (e.g. ACP `elicitation/create`) register here; without a
|
|
139
|
+
* handler, `input_required` fails explicitly instead of hanging.
|
|
140
|
+
*/
|
|
141
|
+
setInputRequestHandler(handler: MCPInputRequestHandler | null): void;
|
|
128
142
|
/**
|
|
129
143
|
* Discover and connect to all MCP servers from .mcp.json files.
|
|
130
144
|
* Returns tools and any connection errors.
|
|
@@ -147,6 +161,17 @@ export declare class MCPManager {
|
|
|
147
161
|
* Get current connection status for a server.
|
|
148
162
|
*/
|
|
149
163
|
getConnectionStatus(name: string): "connected" | "connecting" | "disconnected";
|
|
164
|
+
/**
|
|
165
|
+
* Get the authoritative protocol observation for a connected server
|
|
166
|
+
* (preference, negotiated era/version, downgrade decision, deprecation state).
|
|
167
|
+
* Secret-free; the single observation model consumed by customization doctor
|
|
168
|
+
* (#4288) and /extensions (#4291). Returns undefined when not connected.
|
|
169
|
+
*/
|
|
170
|
+
getProtocolObservation(name: string): MCPProtocolObservation | undefined;
|
|
171
|
+
/**
|
|
172
|
+
* Snapshot of protocol observations for all connected servers.
|
|
173
|
+
*/
|
|
174
|
+
getProtocolObservations(): ReadonlyMap<string, MCPProtocolObservation>;
|
|
150
175
|
/**
|
|
151
176
|
* Get the source metadata for a server.
|
|
152
177
|
*/
|
|
@@ -10,6 +10,10 @@ export interface OAuthEndpoints {
|
|
|
10
10
|
tokenUrl: string;
|
|
11
11
|
clientId?: string;
|
|
12
12
|
scopes?: string;
|
|
13
|
+
/** Issuer recorded from the validated metadata document (RFC 9207). */
|
|
14
|
+
issuer?: string;
|
|
15
|
+
/** `authorization_response_iss_parameter_supported` from the same metadata. */
|
|
16
|
+
authorizationResponseIssSupported?: boolean;
|
|
13
17
|
}
|
|
14
18
|
export interface AuthDetectionResult {
|
|
15
19
|
requiresAuth: boolean;
|
|
@@ -6,12 +6,22 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import { OAuthCallbackFlow } from "@gajae-code/ai/utils/oauth/callback-server";
|
|
8
8
|
import type { OAuthController, OAuthCredentials } from "@gajae-code/ai/utils/oauth/types";
|
|
9
|
+
/**
|
|
10
|
+
* Canonical MCP server resource URI per RFC 8707 §2: absolute URI, lowercase
|
|
11
|
+
* scheme/host, no fragment, no trailing slash on an empty path.
|
|
12
|
+
*/
|
|
13
|
+
export declare function canonicalMCPResourceUri(raw: string): string | undefined;
|
|
9
14
|
export interface MCPOAuthConfig {
|
|
10
15
|
/** Authorization endpoint URL */
|
|
11
16
|
authorizationUrl: string;
|
|
12
17
|
/** Token endpoint URL */
|
|
13
18
|
tokenUrl: string;
|
|
14
|
-
/**
|
|
19
|
+
/**
|
|
20
|
+
* Client ID (optional when already embedded in authorization URL). An
|
|
21
|
+
* HTTPS URL here is a Client ID Metadata Document (CIMD) reference per
|
|
22
|
+
* MCP 2026-07-28 and is used as-is; Dynamic Client Registration is only a
|
|
23
|
+
* deprecated backwards-compatibility fallback when no client id exists.
|
|
24
|
+
*/
|
|
15
25
|
clientId?: string;
|
|
16
26
|
/** Client secret (optional for PKCE flows) */
|
|
17
27
|
clientSecret?: string;
|
|
@@ -23,6 +33,19 @@ export interface MCPOAuthConfig {
|
|
|
23
33
|
callbackPort?: number;
|
|
24
34
|
/** Custom callback path (default: /callback or redirectUri pathname) */
|
|
25
35
|
callbackPath?: string;
|
|
36
|
+
/**
|
|
37
|
+
* Canonical URI of the target MCP server (RFC 8707). Sent as the `resource`
|
|
38
|
+
* parameter on BOTH the authorization and token requests, regardless of
|
|
39
|
+
* authorization-server support.
|
|
40
|
+
*/
|
|
41
|
+
resource?: string;
|
|
42
|
+
/**
|
|
43
|
+
* Expected authorization-server issuer recorded from validated discovery
|
|
44
|
+
* metadata (RFC 9207 / MCP 2026-07-28). Validation fails closed on mismatch.
|
|
45
|
+
*/
|
|
46
|
+
issuer?: string;
|
|
47
|
+
/** `authorization_response_iss_parameter_supported` from the same metadata. */
|
|
48
|
+
issuerResponseIssSupported?: boolean;
|
|
26
49
|
}
|
|
27
50
|
/**
|
|
28
51
|
* Generic OAuth flow for MCP servers.
|
|
@@ -48,6 +48,8 @@ export interface MCPPoolKeyIdentity {
|
|
|
48
48
|
authScopeId: string;
|
|
49
49
|
pluginNetworkPolicyId: string;
|
|
50
50
|
capabilityProfile: MCPPoolCapabilityProfile;
|
|
51
|
+
/** Resolved protocol preference (auto | 2026-07-28 | legacy); partitions protocol generations. */
|
|
52
|
+
protocolPreference: string;
|
|
51
53
|
sessionId?: string;
|
|
52
54
|
}
|
|
53
55
|
/**
|