@didim365/agent-cli-core 0.1.3 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +420 -0
  3. package/dist/src/agents/acknowledgedAgents.js +1 -1
  4. package/dist/src/agents/acknowledgedAgents.js.map +1 -1
  5. package/dist/src/agents/cli-help-agent.js +1 -1
  6. package/dist/src/agents/cli-help-agent.js.map +1 -1
  7. package/dist/src/agents/registry.js +25 -11
  8. package/dist/src/agents/registry.js.map +1 -1
  9. package/dist/src/code_assist/oauth-credential-storage.js +19 -7
  10. package/dist/src/code_assist/oauth-credential-storage.js.map +1 -1
  11. package/dist/src/code_assist/oauth2.js +18 -6
  12. package/dist/src/code_assist/oauth2.js.map +1 -1
  13. package/dist/src/config/providerModels.d.ts +74 -0
  14. package/dist/src/config/providerModels.js +195 -0
  15. package/dist/src/config/providerModels.js.map +1 -0
  16. package/dist/src/config/storage.d.ts +90 -0
  17. package/dist/src/config/storage.js +191 -23
  18. package/dist/src/config/storage.js.map +1 -1
  19. package/dist/src/core/logger.d.ts +1 -1
  20. package/dist/src/core/logger.js +9 -9
  21. package/dist/src/core/logger.js.map +1 -1
  22. package/dist/src/core/prompts.js +3 -2
  23. package/dist/src/core/prompts.js.map +1 -1
  24. package/dist/src/generated/git-commit.d.ts +2 -2
  25. package/dist/src/generated/git-commit.js +2 -2
  26. package/dist/src/generated/git-commit.js.map +1 -1
  27. package/dist/src/hooks/hookRegistry.js +1 -1
  28. package/dist/src/hooks/hookRegistry.js.map +1 -1
  29. package/dist/src/hooks/trustedHooks.d.ts +3 -1
  30. package/dist/src/hooks/trustedHooks.js +15 -7
  31. package/dist/src/hooks/trustedHooks.js.map +1 -1
  32. package/dist/src/index.d.ts +3 -1
  33. package/dist/src/index.js +3 -1
  34. package/dist/src/index.js.map +1 -1
  35. package/dist/src/mcp/oauth-token-storage.d.ts +12 -5
  36. package/dist/src/mcp/oauth-token-storage.js +38 -16
  37. package/dist/src/mcp/oauth-token-storage.js.map +1 -1
  38. package/dist/src/mcp/token-storage/file-token-storage.d.ts +3 -1
  39. package/dist/src/mcp/token-storage/file-token-storage.js +31 -23
  40. package/dist/src/mcp/token-storage/file-token-storage.js.map +1 -1
  41. package/dist/src/policy/config.js +30 -8
  42. package/dist/src/policy/config.js.map +1 -1
  43. package/dist/src/policy/policies/plan.toml +1 -1
  44. package/dist/src/providers/providerSelector.d.ts +11 -6
  45. package/dist/src/providers/providerSelector.js +39 -26
  46. package/dist/src/providers/providerSelector.js.map +1 -1
  47. package/dist/src/skills/skillManager.js +10 -6
  48. package/dist/src/skills/skillManager.js.map +1 -1
  49. package/dist/src/tools/glob.d.ts +1 -1
  50. package/dist/src/tools/glob.js +1 -1
  51. package/dist/src/tools/glob.js.map +1 -1
  52. package/dist/src/tools/ls.d.ts +1 -1
  53. package/dist/src/tools/ls.js +2 -2
  54. package/dist/src/tools/ls.js.map +1 -1
  55. package/dist/src/tools/memoryTool.d.ts +3 -1
  56. package/dist/src/tools/memoryTool.js +23 -10
  57. package/dist/src/tools/memoryTool.js.map +1 -1
  58. package/dist/src/tools/read-many-files.d.ts +1 -1
  59. package/dist/src/tools/read-many-files.js +2 -2
  60. package/dist/src/tools/read-many-files.js.map +1 -1
  61. package/dist/src/tools/ripGrep.js +1 -1
  62. package/dist/src/tools/ripGrep.js.map +1 -1
  63. package/dist/src/utils/filesearch/ignore.js +21 -3
  64. package/dist/src/utils/filesearch/ignore.js.map +1 -1
  65. package/dist/src/utils/geminiIgnoreParser.d.ts +8 -2
  66. package/dist/src/utils/geminiIgnoreParser.js +31 -18
  67. package/dist/src/utils/geminiIgnoreParser.js.map +1 -1
  68. package/dist/src/utils/installationManager.d.ts +2 -1
  69. package/dist/src/utils/installationManager.js +6 -3
  70. package/dist/src/utils/installationManager.js.map +1 -1
  71. package/dist/src/utils/memoryDiscovery.js +7 -5
  72. package/dist/src/utils/memoryDiscovery.js.map +1 -1
  73. package/dist/src/utils/paths.d.ts +6 -1
  74. package/dist/src/utils/paths.js +6 -1
  75. package/dist/src/utils/paths.js.map +1 -1
  76. package/dist/src/utils/userAccountManager.d.ts +2 -1
  77. package/dist/src/utils/userAccountManager.js +17 -11
  78. package/dist/src/utils/userAccountManager.js.map +1 -1
  79. package/package.json +1 -1
@@ -82,28 +82,42 @@ export class AgentRegistry {
82
82
  if (!this.config.isAgentsEnabled()) {
83
83
  return;
84
84
  }
85
- // Load user-level agents: ~/.gemini/agents/
86
- const userAgentsDir = Storage.getUserAgentsDir();
87
- const userAgents = await loadAgentsFromDirectory(userAgentsDir);
88
- for (const error of userAgents.errors) {
89
- debugLogger.warn(`[AgentRegistry] Error loading user agent: ${error.message}`);
90
- coreEvents.emitFeedback('error', `Agent loading error: ${error.message}`);
85
+ // Load user-level agents from all read directories (legacy + primary)
86
+ for (const userAgentsDir of Storage.getUserAgentsReadDirs()) {
87
+ const userAgents = await loadAgentsFromDirectory(userAgentsDir);
88
+ for (const error of userAgents.errors) {
89
+ debugLogger.warn(`[AgentRegistry] Error loading user agent: ${error.message}`);
90
+ coreEvents.emitFeedback('error', `Agent loading error: ${error.message}`);
91
+ }
92
+ await Promise.allSettled(userAgents.agents.map((agent) => this.registerAgent(agent)));
91
93
  }
92
- await Promise.allSettled(userAgents.agents.map((agent) => this.registerAgent(agent)));
93
- // Load project-level agents: .gemini/agents/ (relative to Project Root)
94
+ // Load project-level agents from all read directories (legacy + primary)
94
95
  const folderTrustEnabled = this.config.getFolderTrust();
95
96
  const isTrustedFolder = this.config.isTrustedFolder();
96
97
  if (!folderTrustEnabled || isTrustedFolder) {
97
- const projectAgentsDir = this.config.storage.getProjectAgentsDir();
98
- const projectAgents = await loadAgentsFromDirectory(projectAgentsDir);
98
+ const projectAgentsDirs = this.config.storage.getProjectAgentsReadDirs();
99
+ const allProjectAgents = await Promise.all(projectAgentsDirs.map((dir) => loadAgentsFromDirectory(dir)));
100
+ const projectAgents = {
101
+ agents: allProjectAgents.flatMap((r) => r.agents),
102
+ errors: allProjectAgents.flatMap((r) => r.errors),
103
+ };
99
104
  for (const error of projectAgents.errors) {
100
105
  coreEvents.emitFeedback('error', `Agent loading error: ${error.message}`);
101
106
  }
107
+ // Deduplicate agents by name — getAllProjectReadDirs returns [legacy, primary],
108
+ // so primary agents appear last. Map.set keeps last value, giving primary precedence.
109
+ // This prevents non-deterministic registration order when Promise.allSettled
110
+ // runs concurrent async registerRemoteAgent calls.
111
+ const agentsByName = new Map();
112
+ for (const agent of projectAgents.agents) {
113
+ agentsByName.set(agent.name, agent);
114
+ }
115
+ const uniqueProjectAgents = Array.from(agentsByName.values());
102
116
  const ackService = this.config.getAcknowledgedAgentsService();
103
117
  const projectRoot = this.config.getProjectRoot();
104
118
  const unacknowledgedAgents = [];
105
119
  const agentsToRegister = [];
106
- for (const agent of projectAgents.agents) {
120
+ for (const agent of uniqueProjectAgents) {
107
121
  // If it's a remote agent, use the agentCardUrl as the hash.
108
122
  // This allows multiple remote agents in a single file to be tracked independently.
109
123
  if (agent.kind === 'remote') {
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/agents/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/agents/registry.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ import { HybridTokenStorage } from '../mcp/token-storage/hybrid-token-storage.js
8
8
  import { OAUTH_FILE } from '../config/storage.js';
9
9
  import * as path from 'node:path';
10
10
  import { promises as fs } from 'node:fs';
11
- import { GEMINI_DIR, homedir } from '../utils/paths.js';
11
+ import { DIDIM_DIR, LEGACY_GEMINI_DIR, homedir } from '../utils/paths.js';
12
12
  import { coreEvents } from '../utils/events.js';
13
13
  const KEYCHAIN_SERVICE_NAME = 'gemini-cli-oauth';
14
14
  const MAIN_ACCOUNT_KEY = 'main-account';
@@ -67,22 +67,34 @@ export class OAuthCredentialStorage {
67
67
  * Clear cached OAuth credentials
68
68
  */
69
69
  static async clearCredentials() {
70
+ // Step 1: Remove from new storage.
71
+ // "No credentials found" is expected when clearing already-cleared storage.
70
72
  try {
71
73
  await this.storage.deleteCredentials(MAIN_ACCOUNT_KEY);
72
- // Also try to remove the old file if it exists
73
- const oldFilePath = path.join(homedir(), GEMINI_DIR, OAUTH_FILE);
74
- await fs.rm(oldFilePath, { force: true }).catch(() => { });
75
74
  }
76
75
  catch (error) {
77
- coreEvents.emitFeedback('error', 'Failed to clear OAuth credentials', error);
78
- throw new Error('Failed to clear OAuth credentials', { cause: error });
76
+ const isNotFound = error instanceof Error &&
77
+ error.message.includes('No credentials found');
78
+ if (!isNotFound) {
79
+ coreEvents.emitFeedback('error', 'Failed to clear OAuth credentials', error);
80
+ throw new Error('Failed to clear OAuth credentials', { cause: error });
81
+ }
82
+ }
83
+ // Step 2: Always clean up plaintext credential files in both directories.
84
+ // Covers: legacy .gemini/oauth_creds.json AND .didim/oauth_creds.json
85
+ // (the latter may exist from plaintext mode before switching to encrypted).
86
+ const home = homedir();
87
+ for (const dir of [DIDIM_DIR, LEGACY_GEMINI_DIR]) {
88
+ await fs
89
+ .rm(path.join(home, dir, OAUTH_FILE), { force: true })
90
+ .catch(() => { });
79
91
  }
80
92
  }
81
93
  /**
82
94
  * Migrate credentials from old file-based storage to keychain
83
95
  */
84
96
  static async migrateFromFileStorage() {
85
- const oldFilePath = path.join(homedir(), GEMINI_DIR, OAUTH_FILE);
97
+ const oldFilePath = path.join(homedir(), LEGACY_GEMINI_DIR, OAUTH_FILE);
86
98
  let credsJson;
87
99
  try {
88
100
  credsJson = await fs.readFile(oldFilePath, 'utf-8');
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-credential-storage.js","sourceRoot":"","sources":["../../../src/code_assist/oauth-credential-storage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth-credential-storage.js","sourceRoot":"","sources":["../../../src/code_assist/oauth-credential-storage.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,8 @@ import { getErrorMessage, FatalAuthenticationError, FatalCancellationError, } fr
16
16
  import { UserAccountManager } from '../utils/userAccountManager.js';
17
17
  import { AuthType } from '../core/contentGenerator.js';
18
18
  import readline from 'node:readline';
19
- import { Storage } from '../config/storage.js';
19
+ import { Storage, OAUTH_FILE } from '../config/storage.js';
20
+ import { DIDIM_DIR, LEGACY_GEMINI_DIR, homedir } from '../utils/paths.js';
20
21
  import { OAuthCredentialStorage } from './oauth-credential-storage.js';
21
22
  import { FORCE_ENCRYPTED_FILE_ENV_VAR } from '../mcp/token-storage/index.js';
22
23
  import { debugLogger } from '../utils/debugLogger.js';
@@ -480,22 +481,33 @@ export function clearOauthClientCache() {
480
481
  oauthClientPromises.clear();
481
482
  }
482
483
  export async function clearCachedCredentialFile() {
484
+ // Each step runs independently so a failure in one doesn't skip the others.
483
485
  try {
484
486
  const useEncryptedStorage = getUseEncryptedStorageFlag();
485
487
  if (useEncryptedStorage) {
486
488
  await OAuthCredentialStorage.clearCredentials();
487
489
  }
488
490
  else {
489
- await fs.rm(Storage.getOAuthCredsPath(), { force: true });
491
+ // Delete both primary (.didim) and legacy (.gemini) credential files
492
+ // to prevent legacy file re-exposure after clearing.
493
+ const home = homedir();
494
+ for (const dir of [DIDIM_DIR, LEGACY_GEMINI_DIR]) {
495
+ await fs.rm(path.join(home, dir, OAUTH_FILE), { force: true });
496
+ }
490
497
  }
498
+ }
499
+ catch (e) {
500
+ debugLogger.warn('Failed to clear cached credential files:', e);
501
+ }
502
+ try {
491
503
  // Clear the Google Account ID cache when credentials are cleared
492
504
  await userAccountManager.clearCachedGoogleAccount();
493
- // Clear the in-memory OAuth client cache to force re-authentication
494
- clearOauthClientCache();
495
505
  }
496
506
  catch (e) {
497
- debugLogger.warn('Failed to clear cached credentials:', e);
507
+ debugLogger.warn('Failed to clear cached Google account:', e);
498
508
  }
509
+ // Clear the in-memory OAuth client cache to force re-authentication
510
+ clearOauthClientCache();
499
511
  }
500
512
  async function fetchAndCacheUserInfo(client) {
501
513
  try {
@@ -524,7 +536,7 @@ export function resetOauthClientForTesting() {
524
536
  oauthClientPromises.clear();
525
537
  }
526
538
  async function cacheCredentials(credentials) {
527
- const filePath = Storage.getOAuthCredsPath();
539
+ const filePath = Storage.getGlobalWritePath(OAUTH_FILE);
528
540
  await fs.mkdir(path.dirname(filePath), { recursive: true });
529
541
  const credString = JSON.stringify(credentials, null, 2);
530
542
  await fs.writeFile(filePath, credString, { mode: 0o600 });
@@ -1 +1 @@
1
- {"version":3,"file":"oauth2.js","sourceRoot":"","sources":["../../../src/code_assist/oauth2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth2.js","sourceRoot":"","sources":["../../../src/code_assist/oauth2.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * Individual model metadata within a provider group.
8
+ */
9
+ export interface ProviderModelInfo {
10
+ /** API에 전달하는 모델 ID */
11
+ id: string;
12
+ /** UI에 표시할 이름 (생략 시 id 사용) */
13
+ displayName?: string;
14
+ /** 설명 텍스트 */
15
+ description?: string;
16
+ /** 이 모델이 프로바이더의 기본 권장 모델인지 */
17
+ isDefault?: boolean;
18
+ /** 모델 카테고리 */
19
+ category?: 'auto' | 'recommended' | 'reasoning' | 'general' | 'lite';
20
+ }
21
+ /**
22
+ * Provider-level model group containing presets and model list.
23
+ */
24
+ export interface ProviderModelGroup {
25
+ /** 프로바이더 키 (ProviderType 값과 매칭) */
26
+ providerKey: string;
27
+ /** 첫번째 화면에서 보여줄 프리셋 옵션 */
28
+ presets: Array<{
29
+ value: string;
30
+ title: string;
31
+ description: string;
32
+ }>;
33
+ /** 두번째 화면(Manual)에서 보여줄 개별 모델 목록 */
34
+ models: ProviderModelInfo[];
35
+ /** 텍스트 입력 모드 여부 (sLM용) */
36
+ freeformInput?: boolean;
37
+ /** 모델 선택 비활성 (DidimAIStudio 등) */
38
+ modelSelectionDisabled?: boolean;
39
+ /** 비활성 시 안내 메시지 */
40
+ disabledMessage?: string;
41
+ /** 레지스트리 외 커스텀 모델 허용 여부 (기본 true) */
42
+ allowCustomModels?: boolean;
43
+ }
44
+ /**
45
+ * Single Source of Truth for provider model metadata.
46
+ *
47
+ * Each key corresponds to a ProviderType enum value.
48
+ * `DEFAULT_PROVIDER_MODELS` in providerSelector.ts is derived from this registry.
49
+ */
50
+ export declare const PROVIDER_MODEL_REGISTRY: Record<string, ProviderModelGroup>;
51
+ /**
52
+ * Get the default model for a provider from the registry.
53
+ *
54
+ * Returns the model marked with `isDefault: true`, or falls back to
55
+ * `presets[0].value` → `models[0].id` → `'default'`.
56
+ *
57
+ * @param providerKey - Registry key (matches ProviderType enum value)
58
+ * @returns Default model ID string
59
+ */
60
+ export declare function getDefaultModelFromRegistry(providerKey: string): string;
61
+ /**
62
+ * Validate whether a model is appropriate for a given provider.
63
+ *
64
+ * Validation strategy:
65
+ * - `freeformInput` providers accept any model
66
+ * - `modelSelectionDisabled` providers skip validation
67
+ * - Registry models (presets + models) are always valid
68
+ * - `allowCustomModels` (default true): reject only models owned by other providers
69
+ *
70
+ * @param model - Model ID to validate
71
+ * @param providerKey - Target provider key
72
+ * @returns true if the model is valid for the provider
73
+ */
74
+ export declare function isModelValidForProvider(model: string, providerKey: string): boolean;
@@ -0,0 +1,195 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * Single Source of Truth for provider model metadata.
8
+ *
9
+ * Each key corresponds to a ProviderType enum value.
10
+ * `DEFAULT_PROVIDER_MODELS` in providerSelector.ts is derived from this registry.
11
+ */
12
+ export const PROVIDER_MODEL_REGISTRY = {
13
+ gemini: {
14
+ providerKey: 'gemini',
15
+ presets: [
16
+ {
17
+ value: 'auto-gemini-3',
18
+ title: 'Auto (Gemini 3)',
19
+ description: 'Let Didim CLI decide the best model: gemini-3-pro, gemini-3-flash',
20
+ },
21
+ {
22
+ value: 'auto-gemini-2.5',
23
+ title: 'Auto (Gemini 2.5)',
24
+ description: 'Let Didim CLI decide the best model: gemini-2.5-pro, gemini-2.5-flash',
25
+ },
26
+ ],
27
+ models: [
28
+ { id: 'gemini-3-pro-preview', category: 'general' },
29
+ { id: 'gemini-3-flash-preview', category: 'lite' },
30
+ { id: 'gemini-2.5-pro', category: 'general', isDefault: true },
31
+ { id: 'gemini-2.5-flash', category: 'lite' },
32
+ { id: 'gemini-2.5-flash-lite', category: 'lite' },
33
+ ],
34
+ allowCustomModels: true,
35
+ },
36
+ claude: {
37
+ providerKey: 'claude',
38
+ presets: [
39
+ {
40
+ value: 'claude-opus-4-6',
41
+ title: 'Recommended (claude-opus-4-6)',
42
+ description: 'Most intelligent model for building agents and coding',
43
+ },
44
+ ],
45
+ models: [
46
+ {
47
+ id: 'claude-opus-4-6',
48
+ description: 'Most intelligent, agents & coding',
49
+ isDefault: true,
50
+ },
51
+ {
52
+ id: 'claude-sonnet-4-5-20250929',
53
+ description: 'Best speed & intelligence balance',
54
+ },
55
+ {
56
+ id: 'claude-haiku-4-5-20251001',
57
+ description: 'Fastest, near-frontier intelligence',
58
+ },
59
+ ],
60
+ allowCustomModels: true,
61
+ },
62
+ openai: {
63
+ providerKey: 'openai',
64
+ presets: [
65
+ {
66
+ value: 'gpt-4.1',
67
+ title: 'Recommended (gpt-4.1)',
68
+ description: 'Smartest non-reasoning model for complex tasks',
69
+ },
70
+ ],
71
+ models: [
72
+ {
73
+ id: 'gpt-4.1',
74
+ description: 'Smartest non-reasoning model',
75
+ isDefault: true,
76
+ },
77
+ { id: 'gpt-4.1-mini', description: 'Fast, balanced performance' },
78
+ { id: 'gpt-4.1-nano', description: 'Fastest, most cost-efficient' },
79
+ {
80
+ id: 'gpt-4o',
81
+ description: 'High-intelligence flagship',
82
+ category: 'general',
83
+ },
84
+ {
85
+ id: 'o3',
86
+ description: 'Most powerful reasoning model',
87
+ category: 'reasoning',
88
+ },
89
+ {
90
+ id: 'o4-mini',
91
+ description: 'Fast, cost-efficient reasoning',
92
+ category: 'reasoning',
93
+ },
94
+ ],
95
+ allowCustomModels: true,
96
+ },
97
+ 'openai-compatible': {
98
+ providerKey: 'openai-compatible',
99
+ presets: [],
100
+ models: [],
101
+ freeformInput: true,
102
+ },
103
+ didim: {
104
+ providerKey: 'didim',
105
+ presets: [],
106
+ models: [],
107
+ modelSelectionDisabled: true,
108
+ disabledMessage: 'DidimAIStudio는 시나리오 기반으로 동작하므로 개별 모델 선택을 지원하지 않습니다.',
109
+ },
110
+ };
111
+ /**
112
+ * Get the default model for a provider from the registry.
113
+ *
114
+ * Returns the model marked with `isDefault: true`, or falls back to
115
+ * `presets[0].value` → `models[0].id` → `'default'`.
116
+ *
117
+ * @param providerKey - Registry key (matches ProviderType enum value)
118
+ * @returns Default model ID string
119
+ */
120
+ export function getDefaultModelFromRegistry(providerKey) {
121
+ const group = PROVIDER_MODEL_REGISTRY[providerKey];
122
+ if (!group)
123
+ return 'default';
124
+ if (group.freeformInput)
125
+ return 'default';
126
+ if (group.modelSelectionDisabled)
127
+ return `${providerKey}-default`;
128
+ const defaultModel = group.models.find((m) => m.isDefault);
129
+ if (defaultModel)
130
+ return defaultModel.id;
131
+ if (group.presets.length > 0)
132
+ return group.presets[0].value;
133
+ return group.models[0]?.id ?? 'default';
134
+ }
135
+ /**
136
+ * Validate whether a model is appropriate for a given provider.
137
+ *
138
+ * Validation strategy:
139
+ * - `freeformInput` providers accept any model
140
+ * - `modelSelectionDisabled` providers skip validation
141
+ * - Registry models (presets + models) are always valid
142
+ * - `allowCustomModels` (default true): reject only models owned by other providers
143
+ *
144
+ * @param model - Model ID to validate
145
+ * @param providerKey - Target provider key
146
+ * @returns true if the model is valid for the provider
147
+ */
148
+ export function isModelValidForProvider(model, providerKey) {
149
+ const group = PROVIDER_MODEL_REGISTRY[providerKey];
150
+ if (!group)
151
+ return true;
152
+ if (group.freeformInput)
153
+ return true;
154
+ if (group.modelSelectionDisabled)
155
+ return true;
156
+ // Check registry (presets + models)
157
+ const presetValues = group.presets.map((p) => p.value);
158
+ const modelIds = group.models.map((m) => m.id);
159
+ if (presetValues.includes(model) || modelIds.includes(model))
160
+ return true;
161
+ // allowCustomModels (default true): reject only other-provider models
162
+ const allowCustom = group.allowCustomModels !== false;
163
+ if (allowCustom) {
164
+ return !isModelOwnedByOtherProvider(model, providerKey);
165
+ }
166
+ return false;
167
+ }
168
+ /**
169
+ * Determine if a model clearly belongs to another provider based on prefix heuristics.
170
+ *
171
+ * Prefix rules:
172
+ * - `claude-*` → claude
173
+ * - `gpt-*`, `o[0-9]*` → openai
174
+ * - `gemini-*`, `auto-gemini*` → gemini
175
+ */
176
+ function isModelOwnedByOtherProvider(model, currentProvider) {
177
+ // Normalize to lowercase for case-insensitive prefix matching
178
+ const normalized = model.toLowerCase();
179
+ const providerPrefixes = {
180
+ claude: [(m) => m.startsWith('claude-')],
181
+ openai: [(m) => m.startsWith('gpt-'), (m) => /^o[0-9]/.test(m)],
182
+ gemini: [
183
+ (m) => m.startsWith('gemini-'),
184
+ (m) => m.startsWith('auto-gemini'),
185
+ ],
186
+ };
187
+ for (const [provider, checks] of Object.entries(providerPrefixes)) {
188
+ if (provider === currentProvider)
189
+ continue;
190
+ if (checks.some((check) => check(normalized)))
191
+ return true;
192
+ }
193
+ return false;
194
+ }
195
+ //# sourceMappingURL=providerModels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerModels.js","sourceRoot":"","sources":["../../../src/config/providerModels.ts"],"names":[],"mappings":"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"}