@pellux/goodvibes-tui 0.19.59 → 0.19.61
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 +52 -0
- package/README.md +1 -1
- package/docs/foundation-artifacts/operator-contract.json +2398 -2086
- package/package.json +2 -2
- package/src/audio/player.ts +1 -1
- package/src/audio/spoken-turn-controller.ts +5 -5
- package/src/audio/spoken-turn-model-routing.ts +3 -3
- package/src/audio/spoken-turn-wiring.ts +3 -3
- package/src/cli/bundle-command.ts +3 -3
- package/src/cli/entrypoint.ts +9 -8
- package/src/cli/management-commands.ts +6 -6
- package/src/cli/management.ts +17 -16
- package/src/cli/provider-auth-routes.ts +1 -1
- package/src/cli/service-posture.ts +2 -2
- package/src/cli/status.ts +4 -3
- package/src/cli/surface-command.ts +1 -1
- package/src/config/index.ts +12 -11
- package/src/config/provider-model.ts +23 -0
- package/src/config/secret-config.ts +1 -1
- package/src/config/secrets.ts +3 -3
- package/src/core/composer-state.ts +1 -1
- package/src/core/conversation-rendering.ts +3 -3
- package/src/core/conversation.ts +10 -10
- package/src/core/orchestrator.ts +1 -1
- package/src/core/system-message-router.ts +3 -3
- package/src/daemon/cli.ts +19 -19
- package/src/daemon/safe-serve.ts +2 -2
- package/src/input/bookmark-modal.ts +1 -1
- package/src/input/command-registry.ts +31 -31
- package/src/input/commands/control-room-runtime.ts +3 -3
- package/src/input/commands/conversation-runtime.ts +1 -1
- package/src/input/commands/diff-runtime.ts +1 -1
- package/src/input/commands/discovery-runtime.ts +2 -2
- package/src/input/commands/eval.ts +6 -6
- package/src/input/commands/git-runtime.ts +2 -2
- package/src/input/commands/guidance-runtime.ts +3 -3
- package/src/input/commands/health-runtime.ts +10 -10
- package/src/input/commands/incident-runtime.ts +1 -1
- package/src/input/commands/integration-runtime.ts +2 -2
- package/src/input/commands/intelligence-runtime.ts +3 -3
- package/src/input/commands/knowledge.ts +1 -1
- package/src/input/commands/local-auth-runtime.ts +1 -1
- package/src/input/commands/local-provider-runtime.ts +3 -4
- package/src/input/commands/local-runtime.ts +6 -6
- package/src/input/commands/local-setup-review.ts +3 -3
- package/src/input/commands/local-setup.ts +3 -3
- package/src/input/commands/managed-runtime.ts +9 -8
- package/src/input/commands/marketplace-runtime.ts +1 -1
- package/src/input/commands/mcp-runtime.ts +1 -1
- package/src/input/commands/operator-panel-runtime.ts +1 -1
- package/src/input/commands/operator-runtime.ts +5 -5
- package/src/input/commands/platform-access-runtime.ts +2 -2
- package/src/input/commands/platform-sandbox-qemu.ts +2 -2
- package/src/input/commands/platform-sandbox-runtime.ts +6 -6
- package/src/input/commands/platform-sandbox-session.ts +2 -2
- package/src/input/commands/policy-dispatch.ts +6 -6
- package/src/input/commands/product-runtime.ts +2 -2
- package/src/input/commands/profile-sync-runtime.ts +2 -2
- package/src/input/commands/provider-accounts-runtime.ts +1 -1
- package/src/input/commands/provider.ts +3 -3
- package/src/input/commands/quit-shared.ts +2 -2
- package/src/input/commands/recall-bundle.ts +2 -2
- package/src/input/commands/recall-capture.ts +2 -2
- package/src/input/commands/recall-query.ts +2 -2
- package/src/input/commands/recall-shared.ts +2 -2
- package/src/input/commands/remote-runtime-setup.ts +2 -2
- package/src/input/commands/remote-runtime.ts +1 -1
- package/src/input/commands/replay-runtime.ts +1 -1
- package/src/input/commands/runtime-services.ts +11 -11
- package/src/input/commands/schedule-runtime.ts +6 -6
- package/src/input/commands/services-runtime.ts +1 -1
- package/src/input/commands/session-content.ts +5 -5
- package/src/input/commands/session-workflow.ts +5 -5
- package/src/input/commands/session.ts +2 -2
- package/src/input/commands/settings-sync-runtime.ts +5 -4
- package/src/input/commands/share-runtime.ts +3 -3
- package/src/input/commands/shell-core.ts +4 -5
- package/src/input/commands/skills-runtime.ts +1 -1
- package/src/input/commands/subscription-runtime.ts +7 -7
- package/src/input/commands/tasks-runtime.ts +5 -5
- package/src/input/commands/teamwork-runtime.ts +3 -3
- package/src/input/commands/teleport-runtime.ts +1 -1
- package/src/input/commands/worktree-runtime.ts +3 -3
- package/src/input/feed-context-factory.ts +1 -1
- package/src/input/file-picker.ts +1 -1
- package/src/input/handler-command-route.ts +2 -2
- package/src/input/handler-content-actions.ts +7 -7
- package/src/input/handler-feed-routes.ts +3 -3
- package/src/input/handler-feed.ts +2 -2
- package/src/input/handler-interactions.ts +1 -1
- package/src/input/handler-modal-routes.ts +1 -2
- package/src/input/handler-modal-token-routes.ts +1 -1
- package/src/input/handler-onboarding.ts +9 -6
- package/src/input/handler-picker-routes.ts +3 -3
- package/src/input/handler-shortcuts.ts +1 -1
- package/src/input/handler-ui-state.ts +1 -1
- package/src/input/handler.ts +5 -5
- package/src/input/input-history.ts +2 -2
- package/src/input/keybindings.ts +3 -3
- package/src/input/model-picker-types.ts +1 -1
- package/src/input/model-picker.ts +6 -6
- package/src/input/onboarding/handler-onboarding-routes.ts +1 -1
- package/src/input/onboarding/onboarding-runtime-status.ts +1 -1
- package/src/input/onboarding/onboarding-wizard-apply.ts +2 -2
- package/src/input/onboarding/onboarding-wizard-external-surfaces.ts +1 -1
- package/src/input/panel-integration-actions.ts +1 -1
- package/src/input/profile-picker-modal.ts +5 -5
- package/src/input/session-picker-modal.ts +2 -2
- package/src/input/settings-modal-behavior.ts +3 -5
- package/src/input/settings-modal-secrets.ts +4 -4
- package/src/input/settings-modal-subscriptions.ts +3 -3
- package/src/input/settings-modal-types.ts +4 -4
- package/src/input/settings-modal.ts +9 -9
- package/src/input/tts-settings-actions.ts +1 -1
- package/src/main.ts +16 -17
- package/src/panels/agent-inspector-panel.ts +4 -4
- package/src/panels/agent-logs-panel.ts +2 -2
- package/src/panels/approval-panel.ts +2 -2
- package/src/panels/builtin/operations.ts +1 -1
- package/src/panels/builtin/session.ts +2 -2
- package/src/panels/builtin/shared.ts +26 -26
- package/src/panels/context-visualizer-panel.ts +3 -3
- package/src/panels/cost-tracker-panel.ts +1 -1
- package/src/panels/debug-panel.ts +1 -1
- package/src/panels/eval-panel.ts +1 -1
- package/src/panels/forensics-panel.ts +3 -3
- package/src/panels/git-panel.ts +3 -3
- package/src/panels/hooks-panel.ts +7 -7
- package/src/panels/incident-review-panel.ts +2 -2
- package/src/panels/knowledge-panel.ts +1 -1
- package/src/panels/local-auth-panel.ts +1 -1
- package/src/panels/marketplace-panel.ts +2 -2
- package/src/panels/mcp-panel.ts +2 -2
- package/src/panels/memory-panel.ts +2 -2
- package/src/panels/ops-control-panel.ts +1 -1
- package/src/panels/ops-strategy-panel.ts +2 -2
- package/src/panels/orchestration-panel.ts +1 -1
- package/src/panels/panel-list-panel.ts +1 -1
- package/src/panels/plan-dashboard-panel.ts +1 -1
- package/src/panels/plugins-panel.ts +1 -1
- package/src/panels/policy-panel.ts +1 -1
- package/src/panels/project-planning-panel.ts +1 -1
- package/src/panels/provider-account-snapshot.ts +1 -1
- package/src/panels/provider-health-domains.ts +4 -4
- package/src/panels/provider-health-panel.ts +4 -4
- package/src/panels/provider-stats-panel.ts +1 -1
- package/src/panels/qr-panel.ts +1 -1
- package/src/panels/sandbox-panel.ts +3 -3
- package/src/panels/schedule-panel.ts +4 -4
- package/src/panels/security-panel.ts +1 -1
- package/src/panels/services-panel.ts +1 -1
- package/src/panels/session-browser-panel.ts +3 -3
- package/src/panels/settings-sync-panel.ts +1 -1
- package/src/panels/skills-panel.ts +1 -1
- package/src/panels/subscription-panel.ts +2 -2
- package/src/panels/system-messages-panel.ts +1 -1
- package/src/panels/tasks-panel.ts +5 -5
- package/src/panels/thinking-panel.ts +1 -1
- package/src/panels/token-budget-panel.ts +2 -2
- package/src/panels/tool-inspector-panel.ts +1 -1
- package/src/panels/worktree-panel.ts +6 -6
- package/src/panels/wrfc-panel.ts +4 -4
- package/src/permissions/prompt.ts +3 -3
- package/src/planning/project-planning-coordinator.ts +1 -1
- package/src/plugins/loader.ts +2 -2
- package/src/renderer/agent-detail-modal.ts +5 -5
- package/src/renderer/bookmark-modal.ts +1 -1
- package/src/renderer/git-status.ts +3 -3
- package/src/renderer/help-overlay.ts +1 -1
- package/src/renderer/live-tail-modal.ts +2 -2
- package/src/renderer/model-picker-overlay.ts +2 -2
- package/src/renderer/model-workspace.ts +1 -1
- package/src/renderer/process-modal.ts +3 -3
- package/src/renderer/qr-renderer.ts +1 -1
- package/src/renderer/semantic-diff.ts +6 -6
- package/src/renderer/syntax-highlighter.ts +3 -3
- package/src/renderer/tool-call.ts +1 -1
- package/src/runtime/bootstrap-command-context.ts +46 -46
- package/src/runtime/bootstrap-command-parts.ts +46 -47
- package/src/runtime/bootstrap-core.ts +24 -23
- package/src/runtime/bootstrap-hook-bridge.ts +14 -14
- package/src/runtime/bootstrap-shell.ts +15 -15
- package/src/runtime/bootstrap.ts +27 -27
- package/src/runtime/cloudflare-control-plane.ts +1 -1
- package/src/runtime/context.ts +13 -13
- package/src/runtime/diagnostics/panels/index.ts +14 -14
- package/src/runtime/diagnostics/panels/ops.ts +7 -7
- package/src/runtime/diagnostics/panels/panel-resources.ts +1 -1
- package/src/runtime/diagnostics/panels/policy.ts +11 -11
- package/src/runtime/index.ts +625 -163
- package/src/runtime/onboarding/apply.ts +1 -1
- package/src/runtime/onboarding/derivation.ts +3 -2
- package/src/runtime/onboarding/markers.ts +1 -1
- package/src/runtime/onboarding/snapshot.ts +3 -2
- package/src/runtime/onboarding/types.ts +2 -2
- package/src/runtime/onboarding/verify.ts +1 -1
- package/src/runtime/perf/panel-contracts.ts +2 -2
- package/src/runtime/perf/panel-health-monitor.ts +2 -2
- package/src/runtime/sandbox-public-gaps.ts +486 -0
- package/src/runtime/services.ts +114 -67
- package/src/runtime/store/domains/index.ts +50 -50
- package/src/runtime/store/index.ts +21 -20
- package/src/runtime/store/selectors/index.ts +17 -17
- package/src/runtime/store/state.ts +50 -50
- package/src/runtime/surface-feature-flags.ts +1 -3
- package/src/runtime/terminal-output-guard.ts +1 -1
- package/src/runtime/ui/index.ts +7 -7
- package/src/runtime/ui/model-picker/data-provider.ts +7 -7
- package/src/runtime/ui/model-picker/health-enrichment.ts +7 -7
- package/src/runtime/ui/model-picker/index.ts +11 -11
- package/src/runtime/ui/model-picker/types.ts +1 -1
- package/src/runtime/ui/provider-health/data-provider.ts +4 -4
- package/src/runtime/ui/provider-health/fallback-visualizer.ts +5 -3
- package/src/runtime/ui/provider-health/index.ts +7 -7
- package/src/runtime/ui/provider-health/types.ts +1 -1
- package/src/runtime/ui-events.ts +1 -1
- package/src/runtime/ui-read-model-helpers.ts +1 -1
- package/src/runtime/ui-read-models-observability-maintenance.ts +1 -1
- package/src/runtime/ui-read-models-observability-options.ts +1 -1
- package/src/runtime/ui-read-models-observability-remote.ts +1 -1
- package/src/runtime/ui-read-models-observability-security.ts +1 -1
- package/src/runtime/ui-read-models-observability-system.ts +1 -1
- package/src/runtime/ui-read-models-observability.ts +1 -1
- package/src/runtime/ui-read-models.ts +8 -8
- package/src/runtime/ui-service-queries.ts +1 -1
- package/src/runtime/ui-services.ts +8 -8
- package/src/scripts/process-messages.ts +1 -1
- package/src/shell/blocking-input.ts +2 -2
- package/src/shell/ui-openers.ts +8 -7
- package/src/tools/index.ts +1 -1
- package/src/utils/clipboard.ts +3 -3
- package/src/version.ts +1 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
2
2
|
import { dirname, resolve } from 'node:path';
|
|
3
3
|
import type { CommandRegistry } from '../command-registry.ts';
|
|
4
|
-
import type { ProfileBundleEntry, ProfileSyncBundle } from '
|
|
5
|
-
import { recordSettingsSyncEvent, recordSettingsSyncFailure } from '
|
|
4
|
+
import type { ProfileBundleEntry, ProfileSyncBundle } from '@/runtime/index.ts';
|
|
5
|
+
import { recordSettingsSyncEvent, recordSettingsSyncFailure } from '@/runtime/index.ts';
|
|
6
6
|
import { requireProfileManager, requireShellPaths } from './runtime-services.ts';
|
|
7
7
|
|
|
8
8
|
function inspectProfileSyncBundle(bundle: ProfileSyncBundle): string {
|
|
@@ -2,7 +2,7 @@ import type { CommandContext, CommandRegistry } from '../command-registry.ts';
|
|
|
2
2
|
import type {
|
|
3
3
|
ProviderAccountRecord,
|
|
4
4
|
ProviderAccountSnapshot,
|
|
5
|
-
} from '
|
|
5
|
+
} from '@/runtime/index.ts';
|
|
6
6
|
import {
|
|
7
7
|
openCommandPanel,
|
|
8
8
|
requireOperatorClient,
|
|
@@ -13,9 +13,9 @@
|
|
|
13
13
|
*/
|
|
14
14
|
|
|
15
15
|
import type { SlashCommand, CommandContext } from '../command-registry.ts';
|
|
16
|
-
import type { RouteExplanation } from '@pellux/goodvibes-sdk/platform/providers
|
|
17
|
-
import type { FallbackTestResult, FallbackTransition } from '@pellux/goodvibes-sdk/platform/providers
|
|
18
|
-
import type { ProviderApiModelRecord } from '@pellux/goodvibes-sdk/platform/providers
|
|
16
|
+
import type { RouteExplanation } from '@pellux/goodvibes-sdk/platform/providers';
|
|
17
|
+
import type { FallbackTestResult, FallbackTransition } from '@pellux/goodvibes-sdk/platform/providers';
|
|
18
|
+
import type { ProviderApiModelRecord } from '@pellux/goodvibes-sdk/platform/providers';
|
|
19
19
|
import { requireProviderApi } from './runtime-services.ts';
|
|
20
20
|
|
|
21
21
|
// ---------------------------------------------------------------------------
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { StatusResult } from 'simple-git';
|
|
2
2
|
import { basename } from 'path';
|
|
3
3
|
import type { CommandContext } from '../command-registry.ts';
|
|
4
|
-
import { GitService } from '@pellux/goodvibes-sdk/platform/git
|
|
5
|
-
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils
|
|
4
|
+
import { GitService } from '@pellux/goodvibes-sdk/platform/git';
|
|
5
|
+
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils';
|
|
6
6
|
|
|
7
7
|
type GitLike = Pick<GitService, 'addAll' | 'status' | 'commit'>;
|
|
8
8
|
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { dirname } from 'node:path';
|
|
2
2
|
import { mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
3
3
|
import type { CommandContext } from '../command-registry.ts';
|
|
4
|
-
import type { MemoryBundle, MemorySearchFilter } from '@pellux/goodvibes-sdk/platform/state
|
|
4
|
+
import type { MemoryBundle, MemorySearchFilter } from '@pellux/goodvibes-sdk/platform/state';
|
|
5
5
|
import { VALID_CLASSES, VALID_SCOPES, isValidClass, isValidScope, resolveBundlePath } from './recall-shared.ts';
|
|
6
6
|
import { requireShellPaths } from './runtime-services.ts';
|
|
7
7
|
import { getMemoryApi } from './recall-query.ts';
|
|
8
|
-
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils
|
|
8
|
+
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils';
|
|
9
9
|
|
|
10
10
|
export function handleRecallExport(args: string[], context: CommandContext): void {
|
|
11
11
|
const memory = getMemoryApi(context);
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import type { CommandContext } from '../command-registry.ts';
|
|
2
|
-
import type { ProvenanceLink } from '@pellux/goodvibes-sdk/platform/state
|
|
2
|
+
import type { ProvenanceLink } from '@pellux/goodvibes-sdk/platform/state';
|
|
3
3
|
import {
|
|
4
4
|
buildIncidentMemoryAddOptions,
|
|
5
5
|
buildMcpSecurityMemoryAddOptions,
|
|
6
6
|
buildPluginSecurityMemoryAddOptions,
|
|
7
7
|
buildPolicyPreflightMemoryAddOptions,
|
|
8
|
-
} from '@pellux/goodvibes-sdk/platform/state
|
|
8
|
+
} from '@pellux/goodvibes-sdk/platform/state';
|
|
9
9
|
import { VALID_CLASSES, VALID_SCOPES, isValidClass, isValidScope } from './recall-shared.ts';
|
|
10
10
|
import { getMemoryApi } from './recall-query.ts';
|
|
11
11
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { CommandContext } from '../command-registry.ts';
|
|
2
|
-
import type { MemoryApi } from '@pellux/goodvibes-sdk/platform/knowledge
|
|
3
|
-
import type { MemorySearchFilter } from '@pellux/goodvibes-sdk/platform/state
|
|
2
|
+
import type { MemoryApi } from '@pellux/goodvibes-sdk/platform/knowledge';
|
|
3
|
+
import type { MemorySearchFilter } from '@pellux/goodvibes-sdk/platform/state';
|
|
4
4
|
import { VALID_CLASSES, VALID_SCOPES, isValidClass, isValidScope } from './recall-shared.ts';
|
|
5
5
|
|
|
6
6
|
export function getMemoryApi(context: CommandContext): MemoryApi | null {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { ShellPathService } from '
|
|
2
|
-
import type { MemoryClass, MemoryReviewState, MemoryScope } from '@pellux/goodvibes-sdk/platform/state
|
|
1
|
+
import type { ShellPathService } from '@/runtime/index.ts';
|
|
2
|
+
import type { MemoryClass, MemoryReviewState, MemoryScope } from '@pellux/goodvibes-sdk/platform/state';
|
|
3
3
|
|
|
4
4
|
export const VALID_CLASSES: MemoryClass[] = ['decision', 'constraint', 'incident', 'pattern', 'fact', 'risk', 'runbook', 'architecture', 'ownership'];
|
|
5
5
|
export const VALID_SCOPES: MemoryScope[] = ['session', 'project', 'team'];
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
2
2
|
import { dirname, resolve } from 'node:path';
|
|
3
|
-
import { getDefaultAcpAgentCommand } from '@pellux/goodvibes-sdk/platform/acp
|
|
3
|
+
import { getDefaultAcpAgentCommand } from '@pellux/goodvibes-sdk/platform/acp';
|
|
4
4
|
import type { CommandContext, RemoteCommandService } from '../command-registry.ts';
|
|
5
|
-
import type { RemoteSessionBundle } from '
|
|
5
|
+
import type { RemoteSessionBundle } from '@/runtime/index.ts';
|
|
6
6
|
import { requireShellPaths } from './runtime-services.ts';
|
|
7
7
|
|
|
8
8
|
type RemoteRegistryLike = Pick<RemoteCommandService, 'listContracts' | 'exportSessionBundle' | 'importSessionBundle'>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { resolve } from 'node:path';
|
|
2
2
|
import type { CommandRegistry, CommandContext } from '../command-registry.ts';
|
|
3
|
-
import { AGENT_TEMPLATES } from '@pellux/goodvibes-sdk/platform/tools
|
|
3
|
+
import { AGENT_TEMPLATES } from '@pellux/goodvibes-sdk/platform/tools';
|
|
4
4
|
import { handleRemoteSetupCommand } from './remote-runtime-setup.ts';
|
|
5
5
|
import { handleRemotePoolCommand } from './remote-runtime-pool.ts';
|
|
6
6
|
import { requireAgentManager, requireAcpManager, requirePeerClient, requireShellPaths } from './runtime-services.ts';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { CommandRegistry } from '../command-registry.ts';
|
|
2
|
-
import { handleReplayCommand } from '@pellux/goodvibes-sdk/platform/core
|
|
2
|
+
import { handleReplayCommand } from '@pellux/goodvibes-sdk/platform/core';
|
|
3
3
|
import { requireReplayEngine } from './runtime-services.ts';
|
|
4
4
|
|
|
5
5
|
export function registerReplayRuntimeCommands(registry: CommandRegistry): void {
|
|
@@ -8,17 +8,17 @@ import type {
|
|
|
8
8
|
CommandWorkspaceServices,
|
|
9
9
|
} from '../command-registry.ts';
|
|
10
10
|
import type { UiReadModels } from '../../runtime/ui-read-models.ts';
|
|
11
|
-
import type { ShellPathService } from '
|
|
12
|
-
import type { EcosystemCatalogPathOptions } from '
|
|
11
|
+
import type { ShellPathService } from '@/runtime/index.ts';
|
|
12
|
+
import type { EcosystemCatalogPathOptions } from '@/runtime/index.ts';
|
|
13
13
|
import type { PluginPathOptions } from '../../plugins/loader';
|
|
14
|
-
import type { DirectTransport } from '
|
|
15
|
-
import type { KnowledgeApi } from '@pellux/goodvibes-sdk/platform/knowledge
|
|
16
|
-
import type { HookApi } from '@pellux/goodvibes-sdk/platform/hooks
|
|
17
|
-
import type { McpApi } from '@pellux/goodvibes-sdk/platform/mcp
|
|
18
|
-
import type { OperatorClient } from '
|
|
19
|
-
import type { OpsApi } from '
|
|
20
|
-
import type { PeerClient } from '
|
|
21
|
-
import type { ProviderApi } from '@pellux/goodvibes-sdk/platform/providers
|
|
14
|
+
import type { DirectTransport } from '@/runtime/index.ts';
|
|
15
|
+
import type { KnowledgeApi } from '@pellux/goodvibes-sdk/platform/knowledge';
|
|
16
|
+
import type { HookApi } from '@pellux/goodvibes-sdk/platform/hooks';
|
|
17
|
+
import type { McpApi } from '@pellux/goodvibes-sdk/platform/mcp';
|
|
18
|
+
import type { OperatorClient } from '@/runtime/index.ts';
|
|
19
|
+
import type { OpsApi } from '@/runtime/index.ts';
|
|
20
|
+
import type { PeerClient } from '@/runtime/index.ts';
|
|
21
|
+
import type { ProviderApi } from '@pellux/goodvibes-sdk/platform/providers';
|
|
22
22
|
import type {
|
|
23
23
|
ShellAgentManagerService,
|
|
24
24
|
ShellAcpManagerService,
|
|
@@ -27,7 +27,7 @@ import type {
|
|
|
27
27
|
ShellModeManagerService,
|
|
28
28
|
ShellPlanManagerService,
|
|
29
29
|
ShellSessionOrchestrationService,
|
|
30
|
-
} from '
|
|
30
|
+
} from '@/runtime/index.ts';
|
|
31
31
|
|
|
32
32
|
function requireContextValue<T>(value: T | null | undefined, name: string): T {
|
|
33
33
|
if (value == null) {
|
|
@@ -5,17 +5,17 @@ import {
|
|
|
5
5
|
normalizeAtSchedule,
|
|
6
6
|
normalizeCronSchedule,
|
|
7
7
|
normalizeEverySchedule,
|
|
8
|
-
} from '@pellux/goodvibes-sdk/platform/automation
|
|
9
|
-
import type { AutomationManager } from '@pellux/goodvibes-sdk/platform/automation
|
|
10
|
-
import type { AutomationJob } from '@pellux/goodvibes-sdk/platform/automation
|
|
11
|
-
import type { AutomationScheduleDefinition } from '@pellux/goodvibes-sdk/platform/automation
|
|
12
|
-
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils
|
|
8
|
+
} from '@pellux/goodvibes-sdk/platform/automation';
|
|
9
|
+
import type { AutomationManager } from '@pellux/goodvibes-sdk/platform/automation';
|
|
10
|
+
import type { AutomationJob } from '@pellux/goodvibes-sdk/platform/automation';
|
|
11
|
+
import type { AutomationScheduleDefinition } from '@pellux/goodvibes-sdk/platform/automation';
|
|
12
|
+
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils';
|
|
13
13
|
import type {
|
|
14
14
|
AutomationExecutionPolicy,
|
|
15
15
|
AutomationExternalContentSource,
|
|
16
16
|
AutomationSessionTarget,
|
|
17
17
|
AutomationWakeMode,
|
|
18
|
-
} from '@pellux/goodvibes-sdk/platform/automation
|
|
18
|
+
} from '@pellux/goodvibes-sdk/platform/automation';
|
|
19
19
|
|
|
20
20
|
function formatSchedule(schedule: AutomationScheduleDefinition): string {
|
|
21
21
|
switch (schedule.kind) {
|
|
@@ -3,7 +3,7 @@ import { dirname, join, resolve } from 'node:path';
|
|
|
3
3
|
import type { CommandRegistry } from '../command-registry.ts';
|
|
4
4
|
import type { SelectionAction, SelectionItem } from '../selection-modal.ts';
|
|
5
5
|
import { openCommandPanel, requireServiceRegistry, requireShellPaths } from './runtime-services.ts';
|
|
6
|
-
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils
|
|
6
|
+
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils';
|
|
7
7
|
|
|
8
8
|
export function registerServicesRuntimeCommands(registry: CommandRegistry): void {
|
|
9
9
|
registry.register({
|
|
@@ -3,10 +3,10 @@ import { existsSync, mkdirSync, unlinkSync } from 'node:fs';
|
|
|
3
3
|
import { writeFile } from 'node:fs/promises';
|
|
4
4
|
import type { CommandRegistry } from '../command-registry.ts';
|
|
5
5
|
import type { SelectionItem } from '../selection-modal.ts';
|
|
6
|
-
import { exportToMarkdown } from '@pellux/goodvibes-sdk/platform/export
|
|
7
|
-
import { TemplateManager, parseTemplateArgs } from '@pellux/goodvibes-sdk/platform/templates
|
|
6
|
+
import { exportToMarkdown } from '@pellux/goodvibes-sdk/platform/export';
|
|
7
|
+
import { TemplateManager, parseTemplateArgs } from '@pellux/goodvibes-sdk/platform/templates';
|
|
8
8
|
import { requireSessionManager, requireSessionMemoryStore, requireShellPaths } from './runtime-services.ts';
|
|
9
|
-
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils
|
|
9
|
+
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils';
|
|
10
10
|
|
|
11
11
|
export function registerSessionContentCommands(registry: CommandRegistry): void {
|
|
12
12
|
registry.register({
|
|
@@ -43,9 +43,9 @@ export function registerSessionContentCommands(registry: CommandRegistry): void
|
|
|
43
43
|
const exportMsgs = msgs.map(m => ({
|
|
44
44
|
role: String(m.role ?? 'user') as 'user' | 'assistant' | 'system' | 'tool',
|
|
45
45
|
content: Array.isArray(m.content)
|
|
46
|
-
? m.content as import('@pellux/goodvibes-sdk/platform/providers
|
|
46
|
+
? m.content as import('@pellux/goodvibes-sdk/platform/providers').ContentPart[]
|
|
47
47
|
: String(m.content ?? ''),
|
|
48
|
-
toolCalls: m.toolCalls as import('@pellux/goodvibes-sdk/platform/types
|
|
48
|
+
toolCalls: m.toolCalls as import('@pellux/goodvibes-sdk/platform/types').ToolCall[] | undefined,
|
|
49
49
|
callId: m.callId as string | undefined,
|
|
50
50
|
toolName: m.toolName as string | undefined,
|
|
51
51
|
reasoningContent: m.reasoningContent as string | undefined,
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { randomBytes } from 'node:crypto';
|
|
2
2
|
|
|
3
3
|
import type { CommandContext, CommandRegistry } from '../command-registry.ts';
|
|
4
|
-
import { type SessionMeta } from '@pellux/goodvibes-sdk/platform/sessions
|
|
5
|
-
import type { TranscriptEventKind } from '@pellux/goodvibes-sdk/platform/core
|
|
4
|
+
import { type SessionMeta } from '@pellux/goodvibes-sdk/platform/sessions';
|
|
5
|
+
import type { TranscriptEventKind } from '@pellux/goodvibes-sdk/platform/core';
|
|
6
6
|
import type { ConversationTitleSource } from '../../core/conversation';
|
|
7
|
-
import type { SessionReturnContextSummary } from '
|
|
8
|
-
import { formatReturnContextForDisplay, getReturnContextMode, maybeAssistReturnContextSummary } from '
|
|
7
|
+
import type { SessionReturnContextSummary } from '@/runtime/index.ts';
|
|
8
|
+
import { formatReturnContextForDisplay, getReturnContextMode, maybeAssistReturnContextSummary } from '@/runtime/index.ts';
|
|
9
9
|
import { requirePanelManager, requireProviderApi, requireSessionManager } from './runtime-services.ts';
|
|
10
|
-
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils
|
|
10
|
+
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils';
|
|
11
11
|
|
|
12
12
|
function parseTranscriptKind(raw: string | undefined): TranscriptEventKind | 'all' {
|
|
13
13
|
const normalized = (raw ?? 'all').toLowerCase().replace(/-/g, '_');
|
|
@@ -18,8 +18,8 @@
|
|
|
18
18
|
*/
|
|
19
19
|
|
|
20
20
|
import type { SlashCommand, CommandContext } from '../command-registry.ts';
|
|
21
|
-
import type { CancellationScope, CrossSessionTaskRef } from '@pellux/goodvibes-sdk/platform/sessions
|
|
22
|
-
import { VALID_SCOPES } from '@pellux/goodvibes-sdk/platform/sessions
|
|
21
|
+
import type { CancellationScope, CrossSessionTaskRef } from '@pellux/goodvibes-sdk/platform/sessions';
|
|
22
|
+
import { VALID_SCOPES } from '@pellux/goodvibes-sdk/platform/sessions';
|
|
23
23
|
import { handleSessionWorkflowCommand } from './session-workflow.ts';
|
|
24
24
|
import { requireSessionOrchestration } from './runtime-services.ts';
|
|
25
25
|
|
|
@@ -14,12 +14,13 @@ import {
|
|
|
14
14
|
recordSettingsSyncFailure,
|
|
15
15
|
setManagedSettingLock,
|
|
16
16
|
type SettingsSyncBundle,
|
|
17
|
-
} from '
|
|
17
|
+
} from '@/runtime/index.ts';
|
|
18
|
+
import { getProviderIdFromModel } from '../../config/provider-model.ts';
|
|
18
19
|
import { type ConfigKey } from '../../config/index.ts';
|
|
19
|
-
import { CONFIG_KEYS } from '@pellux/goodvibes-sdk/platform/config
|
|
20
|
+
import { CONFIG_KEYS } from '@pellux/goodvibes-sdk/platform/config';
|
|
20
21
|
import type { CommandRegistry } from '../command-registry.ts';
|
|
21
22
|
import { openCommandPanel, requireShellPaths } from './runtime-services.ts';
|
|
22
|
-
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils
|
|
23
|
+
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils';
|
|
23
24
|
|
|
24
25
|
export function registerSettingsSyncRuntimeCommands(registry: CommandRegistry): void {
|
|
25
26
|
registry.register({
|
|
@@ -71,7 +72,7 @@ export function registerSettingsSyncRuntimeCommands(registry: CommandRegistry):
|
|
|
71
72
|
return;
|
|
72
73
|
}
|
|
73
74
|
ctx.session.runtime.model = String(ctx.platform.configManager.get('provider.model'));
|
|
74
|
-
ctx.session.runtime.provider =
|
|
75
|
+
ctx.session.runtime.provider = getProviderIdFromModel(ctx.platform.configManager.get('provider.model'));
|
|
75
76
|
ctx.session.runtime.reasoningEffort = ctx.platform.configManager.get('provider.reasoningEffort') as string;
|
|
76
77
|
ctx.print(`Resolved synced conflict for ${key} using the ${resolution} value.`);
|
|
77
78
|
return;
|
|
@@ -7,10 +7,10 @@ import {
|
|
|
7
7
|
exportToHTML,
|
|
8
8
|
exportToJSON,
|
|
9
9
|
exportToMarkdownExtended,
|
|
10
|
-
} from '@pellux/goodvibes-sdk/platform/export
|
|
11
|
-
import { logger } from '@pellux/goodvibes-sdk/platform/utils
|
|
10
|
+
} from '@pellux/goodvibes-sdk/platform/export';
|
|
11
|
+
import { logger } from '@pellux/goodvibes-sdk/platform/utils';
|
|
12
12
|
import { requireShellPaths } from './runtime-services.ts';
|
|
13
|
-
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils
|
|
13
|
+
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils';
|
|
14
14
|
|
|
15
15
|
export function registerShareRuntimeCommands(registry: CommandRegistry): void {
|
|
16
16
|
registry.register({
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import type { CommandRegistry } from '../command-registry.ts';
|
|
2
2
|
import type { SelectionItem } from '../selection-modal.ts';
|
|
3
|
-
import { EFFORT_DESCRIPTIONS } from '@pellux/goodvibes-sdk/platform/providers
|
|
4
|
-
import { REASONING_BUDGET_MAP } from '@pellux/goodvibes-sdk/platform/providers
|
|
3
|
+
import { EFFORT_DESCRIPTIONS } from '@pellux/goodvibes-sdk/platform/providers';
|
|
4
|
+
import { REASONING_BUDGET_MAP } from '@pellux/goodvibes-sdk/platform/providers';
|
|
5
5
|
import { executeWriteQuit } from './quit-shared.ts';
|
|
6
6
|
import { compactConversation, requireKeybindingsManager, requireProviderApi } from './runtime-services.ts';
|
|
7
|
-
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils
|
|
8
|
-
import { logger } from '@pellux/goodvibes-sdk/platform/utils
|
|
7
|
+
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils';
|
|
8
|
+
import { logger } from '@pellux/goodvibes-sdk/platform/utils';
|
|
9
9
|
|
|
10
10
|
export function registerShellCoreCommands(registry: CommandRegistry): void {
|
|
11
11
|
registry.register({
|
|
@@ -33,7 +33,6 @@ export function registerShellCoreCommands(registry: CommandRegistry): void {
|
|
|
33
33
|
ctx.session.runtime.model = selected.registryKey;
|
|
34
34
|
ctx.session.runtime.provider = selected.providerId;
|
|
35
35
|
ctx.platform.configManager.set('provider.model', selected.registryKey);
|
|
36
|
-
ctx.platform.configManager.set('provider.provider', selected.providerId);
|
|
37
36
|
ctx.print(`Switched to model: ${selected.displayName} (${selected.providerId})`);
|
|
38
37
|
void providerApi.recordModelUsage(selected.registryKey).catch((err) => { logger.debug('model usage record failed', { err }); });
|
|
39
38
|
} catch (e) {
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
uninstallEcosystemCatalogEntry,
|
|
11
11
|
updateInstalledEcosystemEntry,
|
|
12
12
|
upsertEcosystemCatalogEntry,
|
|
13
|
-
} from '
|
|
13
|
+
} from '@/runtime/index.ts';
|
|
14
14
|
import { requireEcosystemCatalogPaths, requirePanelManager, requireShellPaths } from './runtime-services.ts';
|
|
15
15
|
|
|
16
16
|
export function registerSkillsRuntimeCommands(registry: CommandRegistry): void {
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
2
2
|
import { dirname, resolve } from 'node:path';
|
|
3
3
|
import type { CommandContext, CommandRegistry } from '../command-registry.ts';
|
|
4
|
-
import { createOAuthLocalListener } from '@pellux/goodvibes-sdk/platform/config
|
|
5
|
-
import { beginOpenAICodexLogin, exchangeOpenAICodexCode } from '@pellux/goodvibes-sdk/platform/config
|
|
6
|
-
import type { OAuthProviderConfig, ProviderSubscription } from '@pellux/goodvibes-sdk/platform/config
|
|
7
|
-
import { getSubscriptionProviderConfig, listAvailableSubscriptionProviders } from '@pellux/goodvibes-sdk/platform/config
|
|
8
|
-
import { inspectProviderAuth } from '
|
|
9
|
-
import { openExternalUrl } from '@pellux/goodvibes-sdk/platform/utils
|
|
4
|
+
import { createOAuthLocalListener } from '@pellux/goodvibes-sdk/platform/config';
|
|
5
|
+
import { beginOpenAICodexLogin, exchangeOpenAICodexCode } from '@pellux/goodvibes-sdk/platform/config';
|
|
6
|
+
import type { OAuthProviderConfig, ProviderSubscription } from '@pellux/goodvibes-sdk/platform/config';
|
|
7
|
+
import { getSubscriptionProviderConfig, listAvailableSubscriptionProviders } from '@pellux/goodvibes-sdk/platform/config';
|
|
8
|
+
import { inspectProviderAuth } from '@/runtime/index.ts';
|
|
9
|
+
import { openExternalUrl } from '@pellux/goodvibes-sdk/platform/utils';
|
|
10
10
|
import { requireSecretsManager, requireServiceRegistry, requireShellPaths, requireSubscriptionManager } from './runtime-services.ts';
|
|
11
|
-
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils
|
|
11
|
+
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils';
|
|
12
12
|
|
|
13
13
|
interface SubscriptionBundle {
|
|
14
14
|
readonly version: 1;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { CommandRegistry } from '../command-registry.ts';
|
|
2
|
-
import type { RuntimeTask, TaskLifecycleState } from '
|
|
3
|
-
import { reviewWorktreeAttachments } from '
|
|
2
|
+
import type { RuntimeTask, TaskLifecycleState } from '@/runtime/index.ts';
|
|
3
|
+
import { reviewWorktreeAttachments } from '@/runtime/index.ts';
|
|
4
4
|
import { requireOperatorClient, requireOpsApi, requirePanelManager, requireShellPaths } from './runtime-services.ts';
|
|
5
|
-
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils
|
|
5
|
+
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils';
|
|
6
6
|
|
|
7
7
|
function sortRuntimeTasks(tasks: RuntimeTask[]): RuntimeTask[] {
|
|
8
8
|
const statusOrder: TaskLifecycleState[] = ['running', 'queued', 'blocked', 'failed', 'completed', 'cancelled'];
|
|
@@ -95,7 +95,7 @@ export function registerTasksRuntimeCommands(registry: CommandRegistry): void {
|
|
|
95
95
|
});
|
|
96
96
|
return worktrees.total > 0
|
|
97
97
|
? [
|
|
98
|
-
` worktrees: ${worktrees.total} tracked (${worktrees.active} active / ${worktrees.paused} paused / ${worktrees.
|
|
98
|
+
` worktrees: ${worktrees.total} tracked (${worktrees.active} active / ${worktrees.paused} paused / ${worktrees.pendingCleanup} cleanup)`,
|
|
99
99
|
` worktree next: /worktree task ${task.id}`,
|
|
100
100
|
]
|
|
101
101
|
: [];
|
|
@@ -140,7 +140,7 @@ export function registerTasksRuntimeCommands(registry: CommandRegistry): void {
|
|
|
140
140
|
return;
|
|
141
141
|
}
|
|
142
142
|
const task = opsApi.tasks.create({
|
|
143
|
-
kind: kind as import('
|
|
143
|
+
kind: kind as import('@/runtime/index.ts').TaskKind,
|
|
144
144
|
owner,
|
|
145
145
|
title,
|
|
146
146
|
description: title,
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import type { CommandRegistry, CommandContext } from '../command-registry.ts';
|
|
2
2
|
import { join } from 'node:path';
|
|
3
|
-
import { AGENT_TEMPLATES } from '@pellux/goodvibes-sdk/platform/tools
|
|
4
|
-
import { ArchetypeLoader, type AgentArchetype } from '@pellux/goodvibes-sdk/platform/agents
|
|
3
|
+
import { AGENT_TEMPLATES } from '@pellux/goodvibes-sdk/platform/tools';
|
|
4
|
+
import { ArchetypeLoader, type AgentArchetype } from '@pellux/goodvibes-sdk/platform/agents';
|
|
5
5
|
import { requireOpsApi, requireReadModels, requireShellPaths } from './runtime-services.ts';
|
|
6
|
-
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils
|
|
6
|
+
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils';
|
|
7
7
|
|
|
8
8
|
type TeamworkModeId =
|
|
9
9
|
| 'local-engineer'
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { readFileSync } from 'node:fs';
|
|
2
2
|
import type { CommandRegistry } from '../command-registry.ts';
|
|
3
|
-
import type { RemoteSessionBundle } from '
|
|
3
|
+
import type { RemoteSessionBundle } from '@/runtime/index.ts';
|
|
4
4
|
import { requirePeerClient, requireShellPaths } from './runtime-services.ts';
|
|
5
5
|
|
|
6
6
|
function inspectRemoteSessionBundle(bundle: RemoteSessionBundle): string {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getPersistedWorktreeMeta, reviewWorktreeAttachments, summarizeWorktreeOwnership } from '
|
|
1
|
+
import { getPersistedWorktreeMeta, reviewWorktreeAttachments, summarizeWorktreeOwnership } from '@/runtime/index.ts';
|
|
2
2
|
import type { CommandRegistry } from '../command-registry.ts';
|
|
3
3
|
import { openCommandPanel, requireShellPaths } from './runtime-services.ts';
|
|
4
4
|
|
|
@@ -33,7 +33,7 @@ export function registerWorktreeRuntimeCommands(registry: CommandRegistry): void
|
|
|
33
33
|
}
|
|
34
34
|
const nextSteps = [
|
|
35
35
|
record.state === 'paused' ? `/worktree resume ${record.path}` : null,
|
|
36
|
-
record.state === 'discard' || record.state === 'cleanup
|
|
36
|
+
record.state === 'discard' || record.state === 'pending-cleanup' ? `/worktree cleanup ${record.path}` : null,
|
|
37
37
|
record.state === 'kept' ? `/worktree keep ${record.path}` : null,
|
|
38
38
|
record.sessionId ? `/worktree session ${record.sessionId}` : null,
|
|
39
39
|
record.taskId ? `/worktree task ${record.taskId}` : null,
|
|
@@ -78,7 +78,7 @@ export function registerWorktreeRuntimeCommands(registry: CommandRegistry): void
|
|
|
78
78
|
? [
|
|
79
79
|
`${header}: ${targetKind} ${targetId}`,
|
|
80
80
|
` total: ${review.total}`,
|
|
81
|
-
` active: ${review.active} paused: ${review.paused} kept: ${review.kept} discard: ${review.discard} cleanup: ${review.
|
|
81
|
+
` active: ${review.active} paused: ${review.paused} kept: ${review.kept} discard: ${review.discard} cleanup: ${review.pendingCleanup}`,
|
|
82
82
|
...review.records.map((record) => ` ${record.state.padEnd(15)} ${record.kind.padEnd(12)} ${record.path}`),
|
|
83
83
|
...(sub === 'recover'
|
|
84
84
|
? [
|
|
@@ -150,7 +150,7 @@ export interface FeedContextClosures {
|
|
|
150
150
|
handleBlockToggle: () => void;
|
|
151
151
|
findMarkerAtPos: (pos: number) => { start: number; end: number } | null;
|
|
152
152
|
cleanupMarkerRegistry: (text: string) => void;
|
|
153
|
-
expandPrompt: (text: string) => string | import('@pellux/goodvibes-sdk/platform/providers
|
|
153
|
+
expandPrompt: (text: string) => string | import('@pellux/goodvibes-sdk/platform/providers').ContentPart[];
|
|
154
154
|
openModelPickerWithTarget: (target: ModelPickerTarget, source?: 'settings' | 'onboarding') => boolean;
|
|
155
155
|
openProviderModelPickerWithTarget: (target: ModelPickerTarget, source?: 'settings' | 'onboarding') => boolean;
|
|
156
156
|
onModelPickerCommit: () => boolean;
|
package/src/input/file-picker.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { readdir } from 'node:fs/promises';
|
|
2
2
|
import { join, relative } from 'node:path';
|
|
3
|
-
import type { ShellPathService } from '
|
|
3
|
+
import type { ShellPathService } from '@/runtime/index.ts';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* FilePickerModal - Fuzzy file finder triggered by @ in the input area.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { loadSkillByTrigger } from '@pellux/goodvibes-sdk/platform/tools
|
|
1
|
+
import { loadSkillByTrigger } from '@pellux/goodvibes-sdk/platform/tools';
|
|
2
2
|
import type { CommandContext, CommandRegistry } from './command-registry.ts';
|
|
3
3
|
import type { AutocompleteEngine } from './autocomplete.ts';
|
|
4
|
-
import type { InputToken } from '@pellux/goodvibes-sdk/platform/core
|
|
4
|
+
import type { InputToken } from '@pellux/goodvibes-sdk/platform/core';
|
|
5
5
|
import type { ConversationManager } from '../core/conversation';
|
|
6
6
|
|
|
7
7
|
export type CommandModeRouteState = {
|
|
@@ -2,15 +2,15 @@ import { readFileSync, writeFileSync, existsSync } from 'node:fs';
|
|
|
2
2
|
import { copyToClipboard, pasteFromClipboard, pasteImageFromClipboard } from '../utils/clipboard.ts';
|
|
3
3
|
import type { InfiniteBuffer } from '../core/history.ts';
|
|
4
4
|
import type { ConversationManager } from '../core/conversation';
|
|
5
|
-
import type { PermissionCategory } from '@pellux/goodvibes-sdk/platform/permissions
|
|
6
|
-
import type { ContentPart } from '@pellux/goodvibes-sdk/platform/providers
|
|
5
|
+
import type { PermissionCategory } from '@pellux/goodvibes-sdk/platform/permissions';
|
|
6
|
+
import type { ContentPart } from '@pellux/goodvibes-sdk/platform/providers';
|
|
7
7
|
import type { CommandContext } from './command-registry.ts';
|
|
8
|
-
import type { BookmarkManager } from '@pellux/goodvibes-sdk/platform/bookmarks
|
|
9
|
-
import { resolveAndValidatePath } from '@pellux/goodvibes-sdk/platform/utils
|
|
10
|
-
import { analyzePermissionRequest } from '@pellux/goodvibes-sdk/platform/permissions
|
|
11
|
-
import { logger } from '@pellux/goodvibes-sdk/platform/utils
|
|
8
|
+
import type { BookmarkManager } from '@pellux/goodvibes-sdk/platform/bookmarks';
|
|
9
|
+
import { resolveAndValidatePath } from '@pellux/goodvibes-sdk/platform/utils';
|
|
10
|
+
import { analyzePermissionRequest } from '@pellux/goodvibes-sdk/platform/permissions';
|
|
11
|
+
import { logger } from '@pellux/goodvibes-sdk/platform/utils';
|
|
12
12
|
import type { SelectionManager } from './selection.ts';
|
|
13
|
-
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils
|
|
13
|
+
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils';
|
|
14
14
|
|
|
15
15
|
export const MARKER_REGEX = /\[(TEXT|IMAGE): [^\]]+\]/g;
|
|
16
16
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { InputToken } from '@pellux/goodvibes-sdk/platform/core
|
|
1
|
+
import type { InputToken } from '@pellux/goodvibes-sdk/platform/core';
|
|
2
2
|
import type { BlockMeta, ConversationManager } from '../core/conversation';
|
|
3
3
|
import type { InputHistory } from './input-history.ts';
|
|
4
|
-
import type { ContentPart } from '@pellux/goodvibes-sdk/platform/providers
|
|
4
|
+
import type { ContentPart } from '@pellux/goodvibes-sdk/platform/providers';
|
|
5
5
|
import type { CommandRegistry, CommandContext } from './command-registry.ts';
|
|
6
6
|
import type { AutocompleteEngine } from './autocomplete.ts';
|
|
7
7
|
import type { SelectionManager } from './selection.ts';
|
|
@@ -9,7 +9,7 @@ import type { WrappedPromptInfo } from './handler-prompt-buffer.ts';
|
|
|
9
9
|
import { cleanupMarkerRegistry, expandPrompt, findMarkerAtPos, registerPaste } from './handler-content-actions.ts';
|
|
10
10
|
import type { PanelManager } from '../panels/panel-manager.ts';
|
|
11
11
|
import type { KeybindingsManager } from './keybindings.ts';
|
|
12
|
-
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils
|
|
12
|
+
import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils';
|
|
13
13
|
|
|
14
14
|
export type PanelFocusRouteState = {
|
|
15
15
|
panelManager: PanelManager;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { InputToken } from '@pellux/goodvibes-sdk/platform/core
|
|
1
|
+
import type { InputToken } from '@pellux/goodvibes-sdk/platform/core';
|
|
2
2
|
import type { InfiniteBuffer } from '../core/history.ts';
|
|
3
3
|
import type { CommandContext, CommandRegistry } from './command-registry.ts';
|
|
4
4
|
import { AutocompleteEngine } from './autocomplete.ts';
|
|
@@ -151,7 +151,7 @@ export interface InputFeedContext {
|
|
|
151
151
|
readonly handleBlockToggle: () => void;
|
|
152
152
|
readonly findMarkerAtPos: (pos: number) => { start: number; end: number } | null;
|
|
153
153
|
readonly cleanupMarkerRegistry: (text: string) => void;
|
|
154
|
-
readonly expandPrompt: (text: string) => string | import('@pellux/goodvibes-sdk/platform/providers
|
|
154
|
+
readonly expandPrompt: (text: string) => string | import('@pellux/goodvibes-sdk/platform/providers').ContentPart[];
|
|
155
155
|
readonly openModelPickerWithTarget: (target: ModelPickerTarget, source?: 'settings' | 'onboarding') => boolean;
|
|
156
156
|
readonly openProviderModelPickerWithTarget: (target: ModelPickerTarget, source?: 'settings' | 'onboarding') => boolean;
|
|
157
157
|
readonly onModelPickerCommit: () => boolean;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { buildProviderAccountSnapshot } from '
|
|
1
|
+
import { buildProviderAccountSnapshot } from '@/runtime/index.ts';
|
|
2
2
|
import type { OnboardingWizardMode } from './onboarding/onboarding-wizard.ts';
|
|
3
3
|
import { collectOnboardingSnapshot, readOnboardingCheckMarker, writeOnboardingCheckMarker } from '../runtime/onboarding/index.ts';
|
|
4
4
|
import { cleanupMarkerRegistry, expandPrompt, findMarkerAtPos, handleBlockCopy, handleBlockRerun, handleBlockSave, handleBlockToggle, handleBookmark, handleClipboardPaste, handleCopy, handleCtrlC, handleDiffApply, registerPaste } from './handler-content-actions.ts';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { InputToken } from '@pellux/goodvibes-sdk/platform/core
|
|
1
|
+
import type { InputToken } from '@pellux/goodvibes-sdk/platform/core';
|
|
2
2
|
import type { SelectionResult, SelectionAction } from './selection-modal.ts';
|
|
3
3
|
import type { CommandContext } from './command-registry.ts';
|
|
4
4
|
import { openTtsProviderPicker, openTtsVoicePicker } from './tts-settings-actions.ts';
|
|
@@ -244,7 +244,6 @@ type SettingsRouteState = {
|
|
|
244
244
|
function syncRuntimeAfterSettingReset(ctx: CommandContext | undefined, key: string, value: unknown): void {
|
|
245
245
|
if (!ctx) return;
|
|
246
246
|
if (key === 'provider.model') ctx.session.runtime.model = String(value);
|
|
247
|
-
if (key === 'provider.provider') ctx.session.runtime.provider = String(value);
|
|
248
247
|
if (key === 'provider.reasoningEffort') ctx.session.runtime.reasoningEffort = String(value);
|
|
249
248
|
}
|
|
250
249
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { InputToken } from '@pellux/goodvibes-sdk/platform/core
|
|
1
|
+
import type { InputToken } from '@pellux/goodvibes-sdk/platform/core';
|
|
2
2
|
import type { InfiniteBuffer } from '../core/history.ts';
|
|
3
3
|
import type { SelectionResult, SelectionModal } from './selection-modal.ts';
|
|
4
4
|
import type { BookmarkModal } from './bookmark-modal.ts';
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { createOAuthLocalListener } from '@pellux/goodvibes-sdk/platform/config
|
|
2
|
-
import { beginOpenAICodexLogin, exchangeOpenAICodexCode } from '@pellux/goodvibes-sdk/platform/config
|
|
3
|
-
import { openExternalUrl } from '@pellux/goodvibes-sdk/platform/utils
|
|
4
|
-
import {
|
|
1
|
+
import { createOAuthLocalListener } from '@pellux/goodvibes-sdk/platform/config';
|
|
2
|
+
import { beginOpenAICodexLogin, exchangeOpenAICodexCode } from '@pellux/goodvibes-sdk/platform/config';
|
|
3
|
+
import { openExternalUrl } from '@pellux/goodvibes-sdk/platform/utils';
|
|
4
|
+
import { getProviderIdFromModel } from '../config/provider-model.ts';
|
|
5
|
+
import { buildProviderAccountSnapshot } from '@/runtime/index.ts';
|
|
5
6
|
import { OnboardingWizardController, type OnboardingWizardAction, type OnboardingWizardApplyFeedback } from './onboarding/onboarding-wizard.ts';
|
|
6
7
|
import { handleCloudflareOnboardingActionForHandler, maybeProvisionCloudflareOnFinalApplyForHandler } from './handler-onboarding-cloudflare.ts';
|
|
7
8
|
import { applyOnboardingRequest, collectOnboardingSnapshot, verifyOnboardingRequest } from '../runtime/onboarding/index.ts';
|
|
@@ -545,8 +546,10 @@ export function syncRuntimeFromOnboardingRequestForHandler(handler: InputHandler
|
|
|
545
546
|
|
|
546
547
|
for (const operation of request.operations) {
|
|
547
548
|
if (operation.kind !== 'set-config') continue;
|
|
548
|
-
if (operation.key === 'provider.model' && typeof operation.value === 'string')
|
|
549
|
-
|
|
549
|
+
if (operation.key === 'provider.model' && typeof operation.value === 'string') {
|
|
550
|
+
runtime.model = operation.value;
|
|
551
|
+
runtime.provider = getProviderIdFromModel(operation.value);
|
|
552
|
+
}
|
|
550
553
|
if (operation.key === 'provider.reasoningEffort' && typeof operation.value === 'string') runtime.reasoningEffort = operation.value;
|
|
551
554
|
}
|
|
552
555
|
}
|