@pellux/goodvibes-sdk 0.18.17 → 0.18.19

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.
Files changed (80) hide show
  1. package/dist/_internal/platform/agents/orchestrator-runner.d.ts +5 -4
  2. package/dist/_internal/platform/agents/orchestrator-runner.d.ts.map +1 -1
  3. package/dist/_internal/platform/agents/orchestrator-runner.js +9 -8
  4. package/dist/_internal/platform/agents/orchestrator.d.ts.map +1 -1
  5. package/dist/_internal/platform/agents/orchestrator.js +1 -0
  6. package/dist/_internal/platform/agents/wrfc-controller.d.ts +2 -1
  7. package/dist/_internal/platform/agents/wrfc-controller.d.ts.map +1 -1
  8. package/dist/_internal/platform/agents/wrfc-controller.js +6 -6
  9. package/dist/_internal/platform/agents/wrfc-workmap.d.ts +4 -1
  10. package/dist/_internal/platform/agents/wrfc-workmap.d.ts.map +1 -1
  11. package/dist/_internal/platform/agents/wrfc-workmap.js +4 -2
  12. package/dist/_internal/platform/automation/schedules.js +1 -1
  13. package/dist/_internal/platform/bookmarks/manager.d.ts +1 -1
  14. package/dist/_internal/platform/bookmarks/manager.js +1 -1
  15. package/dist/_internal/platform/config/schema-domain-core.js +1 -1
  16. package/dist/_internal/platform/config/schema-domain-runtime.js +1 -1
  17. package/dist/_internal/platform/config/service-registry.d.ts +1 -1
  18. package/dist/_internal/platform/config/service-registry.js +1 -1
  19. package/dist/_internal/platform/config/subscription-providers.js +1 -1
  20. package/dist/_internal/platform/daemon/facade-composition.d.ts.map +1 -1
  21. package/dist/_internal/platform/daemon/facade-composition.js +4 -0
  22. package/dist/_internal/platform/daemon/service-manager.d.ts +8 -0
  23. package/dist/_internal/platform/daemon/service-manager.d.ts.map +1 -1
  24. package/dist/_internal/platform/daemon/service-manager.js +41 -27
  25. package/dist/_internal/platform/input/keybindings.d.ts +2 -1
  26. package/dist/_internal/platform/input/keybindings.d.ts.map +1 -1
  27. package/dist/_internal/platform/input/keybindings.js +2 -1
  28. package/dist/_internal/platform/intelligence/config.d.ts +1 -1
  29. package/dist/_internal/platform/intelligence/config.d.ts.map +1 -1
  30. package/dist/_internal/platform/intelligence/config.js +8 -4
  31. package/dist/_internal/platform/intelligence/facade.d.ts +1 -1
  32. package/dist/_internal/platform/intelligence/facade.js +2 -2
  33. package/dist/_internal/platform/profiles/manager.d.ts +1 -1
  34. package/dist/_internal/platform/profiles/manager.js +1 -1
  35. package/dist/_internal/platform/providers/anthropic-compat.d.ts +1 -1
  36. package/dist/_internal/platform/providers/anthropic-compat.js +1 -1
  37. package/dist/_internal/platform/providers/custom-loader.d.ts +1 -1
  38. package/dist/_internal/platform/providers/registry.d.ts +2 -2
  39. package/dist/_internal/platform/providers/registry.js +2 -2
  40. package/dist/_internal/platform/runtime/ecosystem/catalog.js +6 -6
  41. package/dist/_internal/platform/runtime/sandbox/provisioning.d.ts +11 -8
  42. package/dist/_internal/platform/runtime/sandbox/provisioning.d.ts.map +1 -1
  43. package/dist/_internal/platform/runtime/services.d.ts.map +1 -1
  44. package/dist/_internal/platform/runtime/services.js +3 -2
  45. package/dist/_internal/platform/runtime/session-persistence.d.ts +1 -0
  46. package/dist/_internal/platform/runtime/session-persistence.d.ts.map +1 -1
  47. package/dist/_internal/platform/runtime/session-persistence.js +4 -4
  48. package/dist/_internal/platform/runtime/surface-root.d.ts +2 -0
  49. package/dist/_internal/platform/runtime/surface-root.d.ts.map +1 -1
  50. package/dist/_internal/platform/runtime/surface-root.js +8 -0
  51. package/dist/_internal/platform/runtime/worktree/registry.d.ts +5 -1
  52. package/dist/_internal/platform/runtime/worktree/registry.d.ts.map +1 -1
  53. package/dist/_internal/platform/runtime/worktree/registry.js +20 -17
  54. package/dist/_internal/platform/scheduler/scheduler.d.ts +1 -1
  55. package/dist/_internal/platform/scheduler/scheduler.js +1 -1
  56. package/dist/_internal/platform/sessions/manager.d.ts +5 -2
  57. package/dist/_internal/platform/sessions/manager.d.ts.map +1 -1
  58. package/dist/_internal/platform/sessions/manager.js +4 -3
  59. package/dist/_internal/platform/tools/fetch/schema.d.ts +1 -1
  60. package/dist/_internal/platform/tools/fetch/schema.js +1 -1
  61. package/dist/_internal/platform/tools/index.js +6 -6
  62. package/dist/_internal/platform/tools/packet/index.d.ts +4 -1
  63. package/dist/_internal/platform/tools/packet/index.d.ts.map +1 -1
  64. package/dist/_internal/platform/tools/packet/index.js +5 -2
  65. package/dist/_internal/platform/tools/query/index.d.ts +4 -1
  66. package/dist/_internal/platform/tools/query/index.d.ts.map +1 -1
  67. package/dist/_internal/platform/tools/query/index.js +5 -2
  68. package/dist/_internal/platform/tools/registry-tool/index.d.ts.map +1 -1
  69. package/dist/_internal/platform/tools/registry-tool/index.js +2 -4
  70. package/dist/_internal/platform/tools/registry-tool/skill-loader.d.ts.map +1 -1
  71. package/dist/_internal/platform/tools/registry-tool/skill-loader.js +1 -2
  72. package/dist/_internal/platform/tools/team/index.d.ts +3 -0
  73. package/dist/_internal/platform/tools/team/index.d.ts.map +1 -1
  74. package/dist/_internal/platform/tools/team/index.js +124 -119
  75. package/dist/_internal/platform/tools/worklist/index.d.ts +3 -0
  76. package/dist/_internal/platform/tools/worklist/index.d.ts.map +1 -1
  77. package/dist/_internal/platform/tools/worklist/index.js +108 -103
  78. package/dist/_internal/platform/watchers/store.d.ts.map +1 -1
  79. package/dist/_internal/platform/watchers/store.js +3 -2
  80. package/package.json +1 -1
@@ -1,17 +1,18 @@
1
- import { ToolRegistry } from '@pellux/goodvibes-sdk/platform/tools/registry';
1
+ import { ToolRegistry } from '../tools/registry.js';
2
2
  import type { ProviderRegistry } from '../providers/registry.js';
3
3
  import type { ProviderOptimizer } from '../providers/optimizer.js';
4
4
  import type { AgentRecord } from '../tools/agent/index.js';
5
5
  import type { LLMProvider } from '../providers/interface.js';
6
- import type { ProcessManager } from '@pellux/goodvibes-sdk/platform/tools/shared/process-manager';
7
- import type { FeatureFlagManager } from '@pellux/goodvibes-sdk/platform/runtime/feature-flags/manager';
6
+ import type { ProcessManager } from '../tools/shared/process-manager.js';
7
+ import type { FeatureFlagManager } from '../runtime/feature-flags/manager.js';
8
8
  import type { RuntimeEventBus } from '../runtime/events/index.js';
9
9
  import type { AgentMessageBus } from './message-bus.js';
10
10
  import type { KnowledgeService } from '../knowledge/index.js';
11
- import type { ArchetypeLoader } from '@pellux/goodvibes-sdk/platform/agents/archetypes';
11
+ import type { ArchetypeLoader } from './archetypes.js';
12
12
  type EmitterContext = import('../runtime/emitters/index.js').EmitterContext;
13
13
  export interface AgentOrchestratorRunContext {
14
14
  readonly workingDirectory: string;
15
+ readonly surfaceRoot?: string;
15
16
  readonly runtimeBus: RuntimeEventBus | null;
16
17
  readonly featureFlagManager: FeatureFlagManager | null;
17
18
  readonly emitterContext: (agentId: string) => EmitterContext;
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator-runner.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/agents/orchestrator-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestrator-runner.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/agents/orchestrator-runner.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,15 @@
1
1
  import { ConversationManager } from '../core/conversation.js';
2
- import { ToolRegistry } from '@pellux/goodvibes-sdk/platform/tools/registry';
2
+ import { ToolRegistry } from '../tools/registry.js';
3
3
  import { join } from 'node:path';
4
- import { logger } from '@pellux/goodvibes-sdk/platform/utils/logger';
5
- import { ConsecutiveErrorBreaker } from '@pellux/goodvibes-sdk/platform/core/circuit-breaker';
6
- import { isRateLimitOrQuotaError, isContextSizeExceededError } from '@pellux/goodvibes-sdk/platform/types/errors';
4
+ import { logger } from '../utils/logger.js';
5
+ import { ConsecutiveErrorBreaker } from '../core/circuit-breaker.js';
6
+ import { isRateLimitOrQuotaError, isContextSizeExceededError } from '../types/errors.js';
7
7
  import { AgentSession } from './session.js';
8
8
  import { estimateTokens, estimateConversationTokens, compactSmallWindow, } from '../core/context-compaction.js';
9
- import { summarizeToolArgs } from '@pellux/goodvibes-sdk/platform/agents/orchestrator-utils';
9
+ import { summarizeToolArgs } from './orchestrator-utils.js';
10
10
  import { buildLayeredOrchestratorSystemPrompt, buildOrchestratorSystemPrompt } from './orchestrator-prompts.js';
11
- import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils/error-display';
11
+ import { summarizeError } from '../utils/error-display.js';
12
+ import { resolveScopedDirectory } from '../runtime/surface-root.js';
12
13
  const MAX_TURNS = 50;
13
14
  const NETWORK_RETRY_DELAYS_MS = [5_000, 10_000, 20_000, 40_000, 60_000];
14
15
  const RATE_LIMIT_RETRY_DELAY_MS = 60_000;
@@ -254,8 +255,8 @@ export async function runAgentTask(context, record) {
254
255
  record.model = record.model ?? primaryRoute.requestedModelId;
255
256
  record.provider = record.provider ?? activeRoute.provider.name;
256
257
  session = new AgentSession(record.id, modelId, record.provider ?? currentModel.provider ?? 'unknown', {
257
- sessionsDir: join(context.workingDirectory, '.goodvibes', 'goodvibes', 'sessions'),
258
- stateDir: join(context.workingDirectory, '.goodvibes', 'state'),
258
+ sessionsDir: resolveScopedDirectory(context.workingDirectory, context.surfaceRoot, 'sessions'),
259
+ stateDir: resolveScopedDirectory(context.workingDirectory, context.surfaceRoot, 'state'),
259
260
  });
260
261
  session.appendMessage({ type: 'session_config', template: record.template, task: record.task, tools: record.tools, model: modelId, provider: record.provider ?? 'unknown', timestamp: new Date().toISOString() });
261
262
  const toolRegistry = context.buildScopedRegistry(record.tools, context.getFullRegistry());
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/agents/orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/agents/orchestrator.ts"],"names":[],"mappings":"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"}
@@ -285,6 +285,7 @@ export class AgentOrchestrator {
285
285
  createRunContext() {
286
286
  return {
287
287
  workingDirectory: this.toolDeps.workingDirectory,
288
+ surfaceRoot: this.toolDeps.surfaceRoot,
288
289
  runtimeBus: this.runtimeBus,
289
290
  featureFlagManager: this.featureFlagManager,
290
291
  emitterContext: (agentId) => this.emitterContext(agentId),
@@ -1,6 +1,6 @@
1
1
  import { AgentMessageBus } from './message-bus.js';
2
2
  import type { WrfcChain } from './wrfc-types.js';
3
- import { WrfcWorkmap } from '@pellux/goodvibes-sdk/platform/agents/wrfc-workmap';
3
+ import { WrfcWorkmap } from './wrfc-workmap.js';
4
4
  import { AgentWorktree } from './worktree.js';
5
5
  import type { ConfigManager } from '../config/manager.js';
6
6
  import type { AgentRecord } from '../tools/agent/index.js';
@@ -28,6 +28,7 @@ export declare class WrfcController {
28
28
  readonly agentManager: AgentManagerLike;
29
29
  readonly configManager: Pick<ConfigManager, 'get' | 'getCategory'>;
30
30
  readonly projectRoot: string;
31
+ readonly surfaceRoot?: string;
31
32
  readonly createWorktree?: () => WrfcWorktreeOps;
32
33
  });
33
34
  createChain(engineerRecord: AgentRecord): WrfcChain;
@@ -1 +1 @@
1
- {"version":3,"file":"wrfc-controller.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/agents/wrfc-controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wrfc-controller.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/agents/wrfc-controller.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,13 @@
1
1
  import { existsSync } from 'node:fs';
2
2
  import { join } from 'node:path';
3
3
  import { AgentMessageBus } from './message-bus.js';
4
- import {} from '@pellux/goodvibes-sdk/platform/agents/completion-report';
4
+ import {} from './completion-report.js';
5
5
  import { buildGateFailureTask, buildFixTask, buildReviewTask, parseEngineerCompletionReport, parseReviewerCompletionReport, } from './wrfc-reporting.js';
6
- import { WrfcWorkmap } from '@pellux/goodvibes-sdk/platform/agents/wrfc-workmap';
6
+ import { WrfcWorkmap } from './wrfc-workmap.js';
7
7
  import { AgentWorktree } from './worktree.js';
8
- import { completePlanItemsForAgent } from '@pellux/goodvibes-sdk/platform/agents/wrfc-plan-sync';
9
- import { logger } from '@pellux/goodvibes-sdk/platform/utils/logger';
10
- import { summarizeError } from '@pellux/goodvibes-sdk/platform/utils/error-display';
8
+ import { completePlanItemsForAgent } from './wrfc-plan-sync.js';
9
+ import { logger } from '../utils/logger.js';
10
+ import { summarizeError } from '../utils/error-display.js';
11
11
  import { emitWorkflowChainFailed, emitWorkflowFixAttempted, emitWorkflowReviewCompleted, } from '../runtime/emitters/index.js';
12
12
  import { getWrfcAutoCommit, getWrfcMaxFixAttempts, getWrfcScoreThreshold, } from './wrfc-config.js';
13
13
  import { completeWrfcOrchestrationNode, createWrfcWorkflowContext, emitWrfcAutoCommitted, emitWrfcCascadeAbort, emitWrfcChainCreated, emitWrfcChainPassed, emitWrfcGraphCreated, emitWrfcStateChanged, failWrfcOrchestrationNode, startWrfcOrchestrationNode, } from './wrfc-runtime-events.js';
@@ -47,7 +47,7 @@ export class WrfcController {
47
47
  this.projectRoot = deps.projectRoot;
48
48
  this.createWorktree = deps.createWorktree ?? (() => new AgentWorktree(this.projectRoot));
49
49
  this.sessionId = crypto.randomUUID().slice(0, 8);
50
- this.workmap = new WrfcWorkmap(this.projectRoot, this.sessionId);
50
+ this.workmap = new WrfcWorkmap(this.projectRoot, this.sessionId, { surfaceRoot: deps.surfaceRoot });
51
51
  this.setupListeners();
52
52
  }
53
53
  createChain(engineerRecord) {
@@ -18,7 +18,10 @@ export interface WorkmapEntry {
18
18
  }
19
19
  export declare class WrfcWorkmap {
20
20
  private filePath;
21
- constructor(projectRoot: string, sessionId: string);
21
+ constructor(projectRoot: string, sessionId: string, options?: {
22
+ readonly surfaceRoot?: string;
23
+ readonly sessionsDir?: string;
24
+ });
22
25
  private dirCreated;
23
26
  append(entry: WorkmapEntry): void;
24
27
  /** Read all entries, optionally filtered by wrfcId */
@@ -1 +1 @@
1
- {"version":3,"file":"wrfc-workmap.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/agents/wrfc-workmap.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,aAAa,GAAG,aAAa,GAAG,cAAc,GAAG,cAAc,CAAC;IACjH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAS;gBAEb,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAIlD,OAAO,CAAC,UAAU,CAAS;IAE3B,MAAM,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAYjC,sDAAsD;IACtD,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,YAAY,EAAE;IAcrC,6DAA6D;IAC7D,UAAU,IAAI,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAe1G,gEAAgE;IAChE,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;CAWtD"}
1
+ {"version":3,"file":"wrfc-workmap.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/agents/wrfc-workmap.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,aAAa,GAAG,aAAa,GAAG,cAAc,GAAG,cAAc,CAAC;IACjH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAS;gBAEb,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE;IAK9H,OAAO,CAAC,UAAU,CAAS;IAE3B,MAAM,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAYjC,sDAAsD;IACtD,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,YAAY,EAAE;IAcrC,6DAA6D;IAC7D,UAAU,IAAI,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAe1G,gEAAgE;IAChE,MAAM,CAAC,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;CAWtD"}
@@ -2,10 +2,12 @@ import { appendFileSync, mkdirSync, readFileSync, existsSync, readdirSync, statS
2
2
  import { join, dirname } from 'path';
3
3
  import { logger } from '../utils/logger.js';
4
4
  import { summarizeError } from '../utils/error-display.js';
5
+ import { resolveScopedDirectory } from '../runtime/surface-root.js';
5
6
  export class WrfcWorkmap {
6
7
  filePath;
7
- constructor(projectRoot, sessionId) {
8
- this.filePath = join(projectRoot, '.goodvibes', 'goodvibes', 'sessions', `${sessionId}_workmap.jsonl`);
8
+ constructor(projectRoot, sessionId, options) {
9
+ const sessionsDir = options?.sessionsDir ?? resolveScopedDirectory(projectRoot, options?.surfaceRoot, 'sessions');
10
+ this.filePath = join(sessionsDir, `${sessionId}_workmap.jsonl`);
9
11
  }
10
12
  dirCreated = false;
11
13
  append(entry) {
@@ -1,7 +1,7 @@
1
1
  import { createHash } from 'node:crypto';
2
2
  import { TaskScheduler } from '../scheduler/scheduler.js';
3
3
  const EVERY_PATTERN = /^(\d+(?:\.\d+)?)(ms|s|m|h|d)$/;
4
- const CRON_HELPER_STATE_PATH = '.goodvibes/goodvibes/.automation-cron-helper.json';
4
+ const CRON_HELPER_STATE_PATH = '.goodvibes/.automation-cron-helper.json';
5
5
  export const DEFAULT_TOP_OF_HOUR_STAGGER_MS = 5 * 60 * 1_000;
6
6
  function createCronHelper() {
7
7
  return new TaskScheduler(CRON_HELPER_STATE_PATH);
@@ -13,7 +13,7 @@ export interface BookmarkEntry {
13
13
  * BookmarkManager - Tracks bookmarked blocks and saves block content to disk.
14
14
  *
15
15
  * Bookmarks are stored in memory for the session. Saved block content is
16
- * written to ~/.goodvibes/goodvibes/bookmarks/<timestamp>-<label>.txt.
16
+ * written to the configured bookmarks directory.
17
17
  */
18
18
  export declare class BookmarkManager {
19
19
  private bookmarks;
@@ -5,7 +5,7 @@ import { logger } from '../utils/logger.js';
5
5
  * BookmarkManager - Tracks bookmarked blocks and saves block content to disk.
6
6
  *
7
7
  * Bookmarks are stored in memory for the session. Saved block content is
8
- * written to ~/.goodvibes/goodvibes/bookmarks/<timestamp>-<label>.txt.
8
+ * written to the configured bookmarks directory.
9
9
  */
10
10
  export class BookmarkManager {
11
11
  bookmarks = new Map();
@@ -528,7 +528,7 @@ export const coreTailConfigSettings = [
528
528
  key: 'tools.hooksFile',
529
529
  type: 'string',
530
530
  default: 'hooks.json',
531
- description: 'Hook configuration file name (relative to .goodvibes/goodvibes/)',
531
+ description: 'Hook configuration file name (relative to the host .goodvibes data directory)',
532
532
  },
533
533
  {
534
534
  key: 'wrfc.scoreThreshold',
@@ -309,7 +309,7 @@ export const runtimeSecondaryConfigSettings = [
309
309
  key: 'service.logPath',
310
310
  type: 'string',
311
311
  default: '',
312
- description: 'File path for daemon/service logs (empty = platform default under .goodvibes/goodvibes/service/)',
312
+ description: 'File path for daemon/service logs (empty = platform default under the configured service directory)',
313
313
  },
314
314
  {
315
315
  key: 'network.outboundTls.mode',
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * ServiceRegistry — named service credential resolution.
3
3
  *
4
- * Reads service configs from .goodvibes/goodvibes/services.json.
4
+ * Reads service configs from the configured services.json path.
5
5
  * Each service entry declares its authType and the SecretsManager key
6
6
  * that holds the credential.
7
7
  *
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * ServiceRegistry — named service credential resolution.
3
3
  *
4
- * Reads service configs from .goodvibes/goodvibes/services.json.
4
+ * Reads service configs from the configured services.json path.
5
5
  * Each service entry declares its authType and the SecretsManager key
6
6
  * that holds the credential.
7
7
  *
@@ -85,7 +85,7 @@ export function listAvailableSubscriptionProviders(services) {
85
85
  oauth: service.oauth,
86
86
  tokenKey: service.tokenKey,
87
87
  providerId: provider,
88
- notes: ['Configured through .goodvibes/goodvibes/services.json'],
88
+ notes: ['Configured through the host service registry services.json file'],
89
89
  });
90
90
  }
91
91
  return [...providers.values()].sort((a, b) => a.provider.localeCompare(b.provider));
@@ -1 +1 @@
1
- {"version":3,"file":"facade-composition.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/daemon/facade-composition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"facade-composition.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/daemon/facade-composition.ts"],"names":[],"mappings":"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"}
@@ -96,6 +96,10 @@ export function resolveDaemonFacadeRuntime(config, fallbackConfigManager) {
96
96
  platformServiceManager: new PlatformServiceManager(resolvedConfigManager, {
97
97
  workingDirectory: runtimeServices.workingDirectory,
98
98
  homeDirectory: runtimeServices.homeDirectory,
99
+ surfaceRoot: 'goodvibes',
100
+ binaryBaseName: 'goodvibes',
101
+ defaultServiceName: 'goodvibes',
102
+ defaultServiceDescription: 'goodvibes omnichannel daemon host',
99
103
  }),
100
104
  distributedRuntime: runtimeServices.distributedRuntime,
101
105
  voiceService: runtimeServices.voiceService,
@@ -35,6 +35,10 @@ interface ManagedServicePaths {
35
35
  export interface ManagedServiceManagerOptions extends ManagedServicePaths {
36
36
  readonly definitionOverride?: ManagedServiceDefinition;
37
37
  readonly actionRunner?: (command: string, args: readonly string[]) => ManagedServiceActionResult;
38
+ readonly surfaceRoot?: string;
39
+ readonly binaryBaseName?: string;
40
+ readonly defaultServiceName?: string;
41
+ readonly defaultServiceDescription?: string;
38
42
  }
39
43
  export declare class PlatformServiceManager {
40
44
  private readonly configManager;
@@ -42,6 +46,10 @@ export declare class PlatformServiceManager {
42
46
  private readonly homeDirectory;
43
47
  private readonly definitionOverride?;
44
48
  private readonly actionRunner?;
49
+ private readonly surfaceRoot?;
50
+ private readonly binaryBaseName?;
51
+ private readonly defaultServiceName?;
52
+ private readonly defaultServiceDescription?;
45
53
  constructor(configManager: ConfigManager, options: ManagedServiceManagerOptions);
46
54
  private getPaths;
47
55
  status(): ManagedServiceStatus;
@@ -1 +1 @@
1
- {"version":3,"file":"service-manager.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/daemon/service-manager.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,MAAM,MAAM,sBAAsB,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;AAElF,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC/C,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;CACpC;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAC;IAC1C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9C,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC;IACxF,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,UAAU,mBAAmB;IAC3B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,4BAA6B,SAAQ,mBAAmB;IACvE,QAAQ,CAAC,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;IACvD,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,KAAK,0BAA0B,CAAC;CAClG;AAgKD,qBAAa,sBAAsB;IACjC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAC9C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAA2B;IAC/D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAA2E;gBAE7F,aAAa,EAAE,aAAa,EAAE,OAAO,EAAE,4BAA4B;IAQ/E,OAAO,CAAC,QAAQ;IAOhB,MAAM,IAAI,oBAAoB;IA2B9B,OAAO,IAAI,oBAAoB;IAoB/B,SAAS,IAAI,oBAAoB;IAejC,KAAK,IAAI,oBAAoB;IAQ7B,IAAI,IAAI,oBAAoB;IAQ5B,OAAO,IAAI,oBAAoB;IAS/B,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,WAAW;IAiCnB,OAAO,CAAC,UAAU;IAmBlB,OAAO,CAAC,iBAAiB;IA2BzB,OAAO,CAAC,OAAO;IAMf,OAAO,CAAC,YAAY;CAQrB"}
1
+ {"version":3,"file":"service-manager.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/daemon/service-manager.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { existsSync, mkdirSync, openSync, readFileSync, rmSync, writeFileSync }
2
2
  import { dirname, join, resolve } from 'node:path';
3
3
  import { spawnSync, spawn } from 'node:child_process';
4
4
  import { ConfigManager } from '../config/manager.js';
5
+ import { resolveScopedDirectory } from '../runtime/surface-root.js';
5
6
  function detectPlatform(platform) {
6
7
  switch (platform) {
7
8
  case 'systemd':
@@ -20,13 +21,14 @@ function detectPlatform(platform) {
20
21
  return 'manual';
21
22
  }
22
23
  }
23
- function buildDefaultDefinition(configManager, workingDirectory) {
24
- const compiledBinary = resolve(workingDirectory, 'dist', process.platform === 'win32' ? 'goodvibes-windows.exe' : 'goodvibes');
24
+ function buildDefaultDefinition(configManager, workingDirectory, options) {
25
+ const binaryBaseName = options.binaryBaseName?.trim() || 'daemon';
26
+ const compiledBinary = resolve(workingDirectory, 'dist', process.platform === 'win32' ? `${binaryBaseName}-windows.exe` : binaryBaseName);
25
27
  const useCompiledBinary = existsSync(compiledBinary);
26
- const serviceName = String(configManager.get('service.serviceName') ?? 'goodvibes').trim() || 'goodvibes';
28
+ const serviceName = resolveServiceName(configManager, options.defaultServiceName);
27
29
  return {
28
30
  name: serviceName,
29
- description: 'goodvibes omnichannel daemon host',
31
+ description: options.defaultServiceDescription?.trim() || `${serviceName} daemon host`,
30
32
  workingDirectory,
31
33
  command: useCompiledBinary ? compiledBinary : process.execPath,
32
34
  args: useCompiledBinary ? [] : ['run', resolve(workingDirectory, 'src', 'daemon', 'cli.ts')],
@@ -38,14 +40,14 @@ function buildDefaultDefinition(configManager, workingDirectory) {
38
40
  restartOnFailure: Boolean(configManager.get('service.restartOnFailure')),
39
41
  };
40
42
  }
41
- function resolveServiceName(configManager) {
42
- return String(configManager.get('service.serviceName') ?? 'goodvibes').trim() || 'goodvibes';
43
+ function resolveServiceName(configManager, defaultServiceName = 'daemon') {
44
+ return String(configManager.get('service.serviceName') ?? defaultServiceName).trim() || defaultServiceName;
43
45
  }
44
- function resolveLogPath(configManager, platform, workingDirectory) {
46
+ function resolveLogPath(configManager, platform, workingDirectory, surfaceRoot) {
45
47
  const configured = String(configManager.get('service.logPath') ?? '').trim();
46
48
  if (configured)
47
49
  return resolve(workingDirectory, configured);
48
- return join(workingDirectory, '.goodvibes', 'goodvibes', 'service', `${platform}.log`);
50
+ return resolveScopedDirectory(workingDirectory, surfaceRoot, 'service', `${platform}.log`);
49
51
  }
50
52
  function renderSystemdUnit(definition) {
51
53
  const envLines = Object.entries(definition.env)
@@ -104,27 +106,27 @@ function renderWindowsCommand(definition) {
104
106
  const commandLine = [definition.command, ...definition.args].join(' ');
105
107
  return `schtasks /Create /SC ONLOGON /TN "${taskName}" /TR "${commandLine}" /F`;
106
108
  }
107
- function definitionPath(platform, serviceName, paths) {
109
+ function definitionPath(platform, serviceName, paths, surfaceRoot) {
108
110
  switch (platform) {
109
111
  case 'systemd':
110
112
  return join(paths.homeDirectory, '.config', 'systemd', 'user', `${serviceName}.service`);
111
113
  case 'launchd':
112
114
  return join(paths.homeDirectory, 'Library', 'LaunchAgents', `${serviceName}.plist`);
113
115
  case 'windows':
114
- return join(paths.workingDirectory, '.goodvibes', 'goodvibes', 'service', 'windows-task.txt');
116
+ return resolveScopedDirectory(paths.workingDirectory, surfaceRoot, 'service', 'windows-task.txt');
115
117
  case 'manual':
116
118
  default:
117
- return join(paths.workingDirectory, '.goodvibes', 'goodvibes', 'service', 'manual-service.txt');
119
+ return resolveScopedDirectory(paths.workingDirectory, surfaceRoot, 'service', 'manual-service.txt');
118
120
  }
119
121
  }
120
- function pidFilePath(platform, workingDirectory) {
122
+ function pidFilePath(platform, workingDirectory, surfaceRoot) {
121
123
  switch (platform) {
122
124
  case 'systemd':
123
125
  case 'launchd':
124
126
  case 'windows':
125
127
  case 'manual':
126
128
  default:
127
- return join(workingDirectory, '.goodvibes', 'goodvibes', 'service', `${platform}.pid`);
129
+ return resolveScopedDirectory(workingDirectory, surfaceRoot, 'service', `${platform}.pid`);
128
130
  }
129
131
  }
130
132
  function suggestedCommands(platform, path, serviceName) {
@@ -139,7 +141,7 @@ function suggestedCommands(platform, path, serviceName) {
139
141
  return [
140
142
  `launchctl unload ${path} || true`,
141
143
  `launchctl load ${path}`,
142
- `launchctl list | grep goodvibes`,
144
+ `launchctl list | grep ${serviceName}`,
143
145
  ];
144
146
  case 'windows':
145
147
  return [
@@ -160,12 +162,20 @@ export class PlatformServiceManager {
160
162
  homeDirectory;
161
163
  definitionOverride;
162
164
  actionRunner;
165
+ surfaceRoot;
166
+ binaryBaseName;
167
+ defaultServiceName;
168
+ defaultServiceDescription;
163
169
  constructor(configManager, options) {
164
170
  this.configManager = configManager;
165
171
  this.workingDirectory = resolve(options.workingDirectory);
166
172
  this.homeDirectory = resolve(options.homeDirectory);
167
173
  this.definitionOverride = options.definitionOverride;
168
174
  this.actionRunner = options.actionRunner;
175
+ this.surfaceRoot = options.surfaceRoot;
176
+ this.binaryBaseName = options.binaryBaseName;
177
+ this.defaultServiceName = options.defaultServiceName;
178
+ this.defaultServiceDescription = options.defaultServiceDescription;
169
179
  }
170
180
  getPaths() {
171
181
  return {
@@ -175,10 +185,10 @@ export class PlatformServiceManager {
175
185
  }
176
186
  status() {
177
187
  const platform = detectPlatform(String(this.configManager.get('service.platform')));
178
- const serviceName = resolveServiceName(this.configManager);
179
- const path = definitionPath(platform, serviceName, this.getPaths());
188
+ const serviceName = resolveServiceName(this.configManager, this.defaultServiceName);
189
+ const path = definitionPath(platform, serviceName, this.getPaths(), this.surfaceRoot);
180
190
  const installed = existsSync(path);
181
- const pidPath = pidFilePath(platform, this.workingDirectory);
191
+ const pidPath = pidFilePath(platform, this.workingDirectory, this.surfaceRoot);
182
192
  const pid = existsSync(pidPath) ? this.readPid(pidPath) : undefined;
183
193
  const running = pid !== undefined ? this.isPidRunning(pid) : false;
184
194
  if (!running && existsSync(pidPath)) {
@@ -192,7 +202,7 @@ export class PlatformServiceManager {
192
202
  autostart: Boolean(this.configManager.get('service.autostart')),
193
203
  running,
194
204
  ...(pid !== undefined && running ? { pid } : {}),
195
- logPath: resolveLogPath(this.configManager, platform, this.workingDirectory),
205
+ logPath: resolveLogPath(this.configManager, platform, this.workingDirectory, this.surfaceRoot),
196
206
  commandPreview: installed ? path : [definition.command, ...definition.args].join(' '),
197
207
  contents: installed ? readFileSync(path, 'utf-8') : undefined,
198
208
  suggestedCommands: suggestedCommands(platform, path, serviceName),
@@ -201,9 +211,9 @@ export class PlatformServiceManager {
201
211
  }
202
212
  install() {
203
213
  const platform = detectPlatform(String(this.configManager.get('service.platform')));
204
- const serviceName = resolveServiceName(this.configManager);
214
+ const serviceName = resolveServiceName(this.configManager, this.defaultServiceName);
205
215
  const definition = this.resolveDefinition();
206
- const path = definitionPath(platform, serviceName, this.getPaths());
216
+ const path = definitionPath(platform, serviceName, this.getPaths(), this.surfaceRoot);
207
217
  const contents = platform === 'systemd'
208
218
  ? renderSystemdUnit(definition)
209
219
  : platform === 'launchd'
@@ -223,7 +233,7 @@ export class PlatformServiceManager {
223
233
  if (existsSync(status.path)) {
224
234
  rmSync(status.path, { force: true });
225
235
  }
226
- const pidPath = pidFilePath(status.platform, this.workingDirectory);
236
+ const pidPath = pidFilePath(status.platform, this.workingDirectory, this.surfaceRoot);
227
237
  if (existsSync(pidPath)) {
228
238
  rmSync(pidPath, { force: true });
229
239
  }
@@ -255,7 +265,11 @@ export class PlatformServiceManager {
255
265
  return this.runPlatformAction(platform, 'restart');
256
266
  }
257
267
  resolveDefinition() {
258
- return this.definitionOverride ?? buildDefaultDefinition(this.configManager, this.workingDirectory);
268
+ return this.definitionOverride ?? buildDefaultDefinition(this.configManager, this.workingDirectory, {
269
+ binaryBaseName: this.binaryBaseName,
270
+ defaultServiceName: this.defaultServiceName,
271
+ defaultServiceDescription: this.defaultServiceDescription,
272
+ });
259
273
  }
260
274
  startManual(platform, action = 'start') {
261
275
  const current = this.status();
@@ -266,8 +280,8 @@ export class PlatformServiceManager {
266
280
  };
267
281
  }
268
282
  const definition = this.resolveDefinition();
269
- const logPath = resolveLogPath(this.configManager, platform, this.workingDirectory);
270
- const pidPath = pidFilePath(platform, this.workingDirectory);
283
+ const logPath = resolveLogPath(this.configManager, platform, this.workingDirectory, this.surfaceRoot);
284
+ const pidPath = pidFilePath(platform, this.workingDirectory, this.surfaceRoot);
271
285
  mkdirSync(dirname(pidPath), { recursive: true });
272
286
  mkdirSync(dirname(logPath), { recursive: true });
273
287
  const stdoutFd = openSync(logPath, 'a');
@@ -290,7 +304,7 @@ export class PlatformServiceManager {
290
304
  };
291
305
  }
292
306
  stopManual(platform) {
293
- const pidPath = pidFilePath(platform, this.workingDirectory);
307
+ const pidPath = pidFilePath(platform, this.workingDirectory, this.surfaceRoot);
294
308
  const pid = existsSync(pidPath) ? this.readPid(pidPath) : undefined;
295
309
  if (pid !== undefined && this.isPidRunning(pid)) {
296
310
  try {
@@ -309,8 +323,8 @@ export class PlatformServiceManager {
309
323
  };
310
324
  }
311
325
  runPlatformAction(platform, action) {
312
- const serviceName = resolveServiceName(this.configManager);
313
- const path = definitionPath(platform, serviceName, this.getPaths());
326
+ const serviceName = resolveServiceName(this.configManager, this.defaultServiceName);
327
+ const path = definitionPath(platform, serviceName, this.getPaths(), this.surfaceRoot);
314
328
  const command = platform === 'systemd'
315
329
  ? ['systemctl', '--user', action === 'start' ? 'enable' : action, ...(action === 'start' ? ['--now'] : []), `${serviceName}.service`]
316
330
  : platform === 'launchd'
@@ -2,7 +2,8 @@
2
2
  * KeybindingsManager — loads and merges keyboard shortcut configuration.
3
3
  *
4
4
  * Default bindings are hardcoded here. Users can override any binding by
5
- * creating ~/.goodvibes/goodvibes/keybindings.json.
5
+ * creating a surface keybindings file under ~/.goodvibes/<surface>/keybindings.json
6
+ * or by passing an explicit configPath.
6
7
  *
7
8
  * Config file format example:
8
9
  * {
@@ -1 +1 @@
1
- {"version":3,"file":"keybindings.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/input/keybindings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAOH,sDAAsD;AACtD,MAAM,WAAW,QAAQ;IACvB,sFAAsF;IACtF,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED,uCAAuC;AACvC,MAAM,MAAM,SAAS,GACjB,gBAAgB,GAChB,cAAc,GACd,cAAc,GACd,cAAc,GACd,aAAa,GACb,iBAAiB,GACjB,gBAAgB,GAChB,gBAAgB,GAChB,gBAAgB,GAChB,QAAQ,GACR,YAAY,GACZ,UAAU,GACV,YAAY,GACZ,aAAa,GACb,uBAAuB,GACvB,qBAAqB,GACrB,WAAW,GACX,cAAc,GACd,MAAM,GACN,MAAM,GACN,OAAO,GACP,cAAc,CAAC;AAEnB,iFAAiF;AACjF,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAuBzD,CAAC;AAEF,4CAA4C;AAC5C,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,CAuB7D,CAAC;AAKF,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAgBD;;;;;GAKG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAgC;IAChD,OAAO,CAAC,UAAU,CAAS;gBAEf,OAAO,EAAE,yBAAyB;IAM9C,OAAO,CAAC,aAAa;IAQrB;;;;OAIG;IACH,YAAY,IAAI,IAAI;IA4BpB,OAAO,CAAC,cAAc;IAQtB;;;;;;OAMG;IACH,OAAO,CACL,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GAC9E,OAAO;IAMV,OAAO,CAAC,YAAY;IAWpB;;OAEG;IACH,MAAM,IAAI,KAAK,CAAC;QAAE,MAAM,EAAE,SAAS,CAAC;QAAC,MAAM,EAAE,QAAQ,EAAE,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAQ/E;;;OAGG;IACH,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM;IAMxC;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM;IASpC,mCAAmC;IACnC,aAAa,IAAI,MAAM;CAGxB"}
1
+ {"version":3,"file":"keybindings.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/input/keybindings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAOH,sDAAsD;AACtD,MAAM,WAAW,QAAQ;IACvB,sFAAsF;IACtF,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED,uCAAuC;AACvC,MAAM,MAAM,SAAS,GACjB,gBAAgB,GAChB,cAAc,GACd,cAAc,GACd,cAAc,GACd,aAAa,GACb,iBAAiB,GACjB,gBAAgB,GAChB,gBAAgB,GAChB,gBAAgB,GAChB,QAAQ,GACR,YAAY,GACZ,UAAU,GACV,YAAY,GACZ,aAAa,GACb,uBAAuB,GACvB,qBAAqB,GACrB,WAAW,GACX,cAAc,GACd,MAAM,GACN,MAAM,GACN,OAAO,GACP,cAAc,CAAC;AAEnB,iFAAiF;AACjF,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAuBzD,CAAC;AAEF,4CAA4C;AAC5C,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,CAuB7D,CAAC;AAKF,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAgBD;;;;;GAKG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAgC;IAChD,OAAO,CAAC,UAAU,CAAS;gBAEf,OAAO,EAAE,yBAAyB;IAM9C,OAAO,CAAC,aAAa;IAQrB;;;;OAIG;IACH,YAAY,IAAI,IAAI;IA4BpB,OAAO,CAAC,cAAc;IAQtB;;;;;;OAMG;IACH,OAAO,CACL,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,GAC9E,OAAO;IAMV,OAAO,CAAC,YAAY;IAWpB;;OAEG;IACH,MAAM,IAAI,KAAK,CAAC;QAAE,MAAM,EAAE,SAAS,CAAC;QAAC,MAAM,EAAE,QAAQ,EAAE,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IAQ/E;;;OAGG;IACH,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,MAAM;IAMxC;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,MAAM;IASpC,mCAAmC;IACnC,aAAa,IAAI,MAAM;CAGxB"}
@@ -2,7 +2,8 @@
2
2
  * KeybindingsManager — loads and merges keyboard shortcut configuration.
3
3
  *
4
4
  * Default bindings are hardcoded here. Users can override any binding by
5
- * creating ~/.goodvibes/goodvibes/keybindings.json.
5
+ * creating a surface keybindings file under ~/.goodvibes/<surface>/keybindings.json
6
+ * or by passing an explicit configPath.
6
7
  *
7
8
  * Config file format example:
8
9
  * {
@@ -16,7 +16,7 @@ export interface LanguageConfig {
16
16
  args: string[];
17
17
  };
18
18
  }
19
- export type IntelligenceRoots = Pick<ShellPathService, 'workingDirectory' | 'homeDirectory'>;
19
+ export type IntelligenceRoots = Pick<ShellPathService, 'workingDirectory' | 'homeDirectory'> & Partial<Pick<ShellPathService, 'resolveProjectPath' | 'resolveUserPath'>>;
20
20
  /**
21
21
  * Built-in defaults for common languages.
22
22
  * These are used when no user or project override exists.
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/intelligence/config.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAGlE,MAAM,WAAW,cAAc;IAC7B,GAAG,CAAC,EAAE;QACJ,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,EAAE,CAAC;QACf,qBAAqB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACjD,CAAC;IACF,iFAAiF;IACjF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAChD,MAAM,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CAC9C;AAED,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,EAAE,kBAAkB,GAAG,eAAe,CAAC,CAAC;AAM7F;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAsD/D;AAuBD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,iBAAiB,GAAG,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAwBzF;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,GAAG,cAAc,GAAG,IAAI,CAEjG"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/_internal/platform/intelligence/config.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAGlE,MAAM,WAAW,cAAc;IAC7B,GAAG,CAAC,EAAE;QACJ,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,EAAE,CAAC;QACf,qBAAqB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACjD,CAAC;IACF,iFAAiF;IACjF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAChD,MAAM,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CAC9C;AAED,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,EAAE,kBAAkB,GAAG,eAAe,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,gBAAgB,EAAE,oBAAoB,GAAG,iBAAiB,CAAC,CAAC,CAAC;AAMzK;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAsD/D;AAuBD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,iBAAiB,GAAG,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CA4BzF;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,GAAG,cAAc,GAAG,IAAI,CAEjG"}