ccman 3.3.15-beta.0 → 3.3.15

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 (2) hide show
  1. package/dist/index.js +23 -18
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -15,7 +15,7 @@ var init_package = __esm({
15
15
  "../core/package.json"() {
16
16
  package_default = {
17
17
  name: "@ccman/core",
18
- version: "3.3.15-beta.0",
18
+ version: "3.3.15",
19
19
  type: "module",
20
20
  description: "Core business logic for ccman - Manage Codex, Claude Code, Gemini CLI, OpenCode, OpenClaw, and MCP configurations",
21
21
  main: "./dist/index.js",
@@ -1239,20 +1239,27 @@ function forcePrimaryModelReasoning(models) {
1239
1239
  };
1240
1240
  });
1241
1241
  }
1242
- function forceProviderPrimaryReasoning(providers, providerName) {
1243
- if (!providers)
1244
- return providers;
1245
- const providerConfig = providers[providerName];
1242
+ function forceProviderPrimaryReasoning(providerConfig) {
1246
1243
  if (!isRecord(providerConfig))
1247
- return providers;
1244
+ return void 0;
1248
1245
  return {
1249
- ...providers,
1250
- [providerName]: {
1251
- ...providerConfig,
1252
- models: forcePrimaryModelReasoning(providerConfig.models)
1253
- }
1246
+ ...providerConfig,
1247
+ models: forcePrimaryModelReasoning(providerConfig.models)
1254
1248
  };
1255
1249
  }
1250
+ function replaceProviderEntry(providers, providerName, nextProvider) {
1251
+ const result = { ...providers || {} };
1252
+ const target = providerName.toLowerCase();
1253
+ for (const key of Object.keys(result)) {
1254
+ if (key.toLowerCase() === target) {
1255
+ delete result[key];
1256
+ }
1257
+ }
1258
+ if (nextProvider) {
1259
+ result[providerName] = nextProvider;
1260
+ }
1261
+ return result;
1262
+ }
1256
1263
  function writeOpenClawConfig(provider) {
1257
1264
  const configPath = getOpenClawConfigPath();
1258
1265
  const modelsPath = getOpenClawModelsPath();
@@ -1272,6 +1279,9 @@ function writeOpenClawConfig(provider) {
1272
1279
  const existingOpenClawConfig = loadExistingJSON(configPath) || {};
1273
1280
  const existingModelsConfig = loadExistingJSON(modelsPath) || {};
1274
1281
  const mergedConfigModels = deepMerge(existingOpenClawConfig.models || {}, nextOpenClawConfig.models || {});
1282
+ const mergedConfigProviders = isRecord(mergedConfigModels.providers) ? mergedConfigModels.providers : void 0;
1283
+ const nextConfigProviders = isRecord(nextOpenClawConfig.models) && isRecord(nextOpenClawConfig.models.providers) ? nextOpenClawConfig.models.providers : void 0;
1284
+ mergedConfigModels.providers = replaceProviderEntry(mergedConfigProviders, providerName, forceProviderPrimaryReasoning(nextConfigProviders?.[providerName]));
1275
1285
  const mergedAgents = deepMerge(nextOpenClawConfig.agents || {}, existingOpenClawConfig.agents || {});
1276
1286
  const mergedDefaults = mergedAgents.defaults || {};
1277
1287
  const mergedModel = mergedDefaults.model || {};
@@ -1292,16 +1302,11 @@ function writeOpenClawConfig(provider) {
1292
1302
  }
1293
1303
  }
1294
1304
  };
1295
- if (isRecord(finalOpenClawConfig.models)) {
1296
- finalOpenClawConfig.models = {
1297
- ...finalOpenClawConfig.models,
1298
- providers: forceProviderPrimaryReasoning(finalOpenClawConfig.models.providers, providerName)
1299
- };
1300
- }
1301
1305
  const mergedProviders = deepMerge(existingModelsConfig.providers || {}, nextModelsConfig.providers || {});
1306
+ const nextModelsProviders = isRecord(nextModelsConfig.providers) ? nextModelsConfig.providers : void 0;
1302
1307
  const finalModelsConfig = {
1303
1308
  ...existingModelsConfig,
1304
- providers: forceProviderPrimaryReasoning(mergedProviders, providerName)
1309
+ providers: replaceProviderEntry(mergedProviders, providerName, forceProviderPrimaryReasoning(nextModelsProviders?.[providerName]))
1305
1310
  };
1306
1311
  writeJSON(configPath, finalOpenClawConfig);
1307
1312
  writeJSON(modelsPath, finalModelsConfig);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ccman",
3
- "version": "3.3.15-beta.0",
3
+ "version": "3.3.15",
4
4
  "type": "module",
5
5
  "description": "Manage Codex, Claude Code, Gemini CLI, OpenCode, OpenClaw, and MCP API service provider configurations",
6
6
  "main": "./dist/index.js",