@appkit/llamacpp-cli 1.3.2 → 1.4.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 (50) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/dist/cli.js +16 -1
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/config-global.d.ts +6 -0
  5. package/dist/commands/config-global.d.ts.map +1 -0
  6. package/dist/commands/config-global.js +38 -0
  7. package/dist/commands/config-global.js.map +1 -0
  8. package/dist/commands/create.d.ts.map +1 -1
  9. package/dist/commands/create.js +15 -6
  10. package/dist/commands/create.js.map +1 -1
  11. package/dist/commands/list.js +2 -2
  12. package/dist/commands/list.js.map +1 -1
  13. package/dist/commands/pull.d.ts.map +1 -1
  14. package/dist/commands/pull.js +4 -1
  15. package/dist/commands/pull.js.map +1 -1
  16. package/dist/lib/model-downloader.d.ts +9 -3
  17. package/dist/lib/model-downloader.d.ts.map +1 -1
  18. package/dist/lib/model-downloader.js +34 -7
  19. package/dist/lib/model-downloader.js.map +1 -1
  20. package/dist/lib/model-scanner.d.ts +8 -2
  21. package/dist/lib/model-scanner.d.ts.map +1 -1
  22. package/dist/lib/model-scanner.js +36 -8
  23. package/dist/lib/model-scanner.js.map +1 -1
  24. package/dist/lib/models-dir-setup.d.ts +6 -0
  25. package/dist/lib/models-dir-setup.d.ts.map +1 -0
  26. package/dist/lib/models-dir-setup.js +75 -0
  27. package/dist/lib/models-dir-setup.js.map +1 -0
  28. package/dist/lib/state-manager.d.ts +8 -0
  29. package/dist/lib/state-manager.d.ts.map +1 -1
  30. package/dist/lib/state-manager.js +15 -0
  31. package/dist/lib/state-manager.js.map +1 -1
  32. package/dist/utils/file-utils.d.ts +1 -1
  33. package/dist/utils/file-utils.js +2 -2
  34. package/dist/utils/file-utils.js.map +1 -1
  35. package/dist/utils/prompt-utils.d.ts +9 -0
  36. package/dist/utils/prompt-utils.d.ts.map +1 -0
  37. package/dist/utils/prompt-utils.js +79 -0
  38. package/dist/utils/prompt-utils.js.map +1 -0
  39. package/package.json +1 -1
  40. package/src/cli.ts +16 -1
  41. package/src/commands/config-global.ts +38 -0
  42. package/src/commands/create.ts +16 -6
  43. package/src/commands/list.ts +2 -2
  44. package/src/commands/pull.ts +5 -1
  45. package/src/lib/model-downloader.ts +40 -8
  46. package/src/lib/model-scanner.ts +41 -9
  47. package/src/lib/models-dir-setup.ts +46 -0
  48. package/src/lib/state-manager.ts +17 -0
  49. package/src/utils/file-utils.ts +2 -2
  50. package/src/utils/prompt-utils.ts +47 -0
package/CHANGELOG.md CHANGED
@@ -2,6 +2,50 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version) for commit guidelines.
4
4
 
5
+ ## [1.4.0](https://github.com/appkitstudio/llamacpp-cli/compare/v1.3.3...v1.4.0) (2026-01-09)
6
+
7
+
8
+ ### ⚠ BREAKING CHANGES
9
+
10
+ * ** Default models directory changed from ~/models to ~/.llamacpp/models
11
+
12
+ Changes:
13
+ - New default: ~/.llamacpp/models (keeps all llamacpp data in one place)
14
+ - Interactive prompt when models directory doesn't exist
15
+ - New 'config' command to view/change global settings
16
+ - Users can customize models directory and switch anytime
17
+
18
+ Commands:
19
+ - `llamacpp config` - View current configuration
20
+ - `llamacpp config --models-dir <path>` - Change models directory
21
+ - All commands (ls, pull, server create) now use configured directory
22
+
23
+ Interactive Setup:
24
+ - When models directory is missing, user is prompted to:
25
+ 1. Accept default path (press Enter)
26
+ 2. Specify custom path (type path and press Enter)
27
+ - Configuration is saved and persists across sessions
28
+ - Directory is created automatically after confirmation
29
+
30
+ Benefits:
31
+ - No more errors on fresh installs
32
+ - All llamacpp data in one place (~/.llamacpp/)
33
+ - Flexible for users who want custom locations
34
+ - Better onboarding experience
35
+
36
+ Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
37
+
38
+ ### Features
39
+
40
+ * add configurable models directory with interactive setup ([975a81b](https://github.com/appkitstudio/llamacpp-cli/commit/975a81b217837b4238c4301f216e18e59f144cbe))
41
+
42
+ ## [1.3.3](https://github.com/appkitstudio/llamacpp-cli/compare/v1.3.2...v1.3.3) (2026-01-09)
43
+
44
+
45
+ ### Bug Fixes
46
+
47
+ * auto-create ~/models directory when downloading models ([a9f54c1](https://github.com/appkitstudio/llamacpp-cli/commit/a9f54c119a41e29fa42003f3c1af0a732f5db9ea))
48
+
5
49
  ## [1.3.2](https://github.com/appkitstudio/llamacpp-cli/compare/v1.3.1...v1.3.2) (2026-01-09)
6
50
 
7
51
 
package/dist/cli.js CHANGED
@@ -20,6 +20,7 @@ const search_1 = require("./commands/search");
20
20
  const show_1 = require("./commands/show");
21
21
  const server_show_1 = require("./commands/server-show");
22
22
  const config_1 = require("./commands/config");
23
+ const config_global_1 = require("./commands/config-global");
23
24
  const package_json_1 = __importDefault(require("../package.json"));
24
25
  const program = new commander_1.Command();
25
26
  program
@@ -29,7 +30,7 @@ program
29
30
  // List models
30
31
  program
31
32
  .command('ls')
32
- .description('List available GGUF models in ~/models')
33
+ .description('List available GGUF models')
33
34
  .action(async () => {
34
35
  try {
35
36
  await (0, list_1.listCommand)();
@@ -114,6 +115,20 @@ program
114
115
  process.exit(1);
115
116
  }
116
117
  });
118
+ // Global configuration
119
+ program
120
+ .command('config')
121
+ .description('View or change global configuration')
122
+ .option('--models-dir <path>', 'Set models directory path')
123
+ .action(async (options) => {
124
+ try {
125
+ await (0, config_global_1.configGlobalCommand)(options);
126
+ }
127
+ catch (error) {
128
+ console.error(chalk_1.default.red('❌ Error:'), error.message);
129
+ process.exit(1);
130
+ }
131
+ });
117
132
  // Server management commands
118
133
  const server = program
119
134
  .command('server')
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ interface ConfigOptions {
2
+ modelsDir?: string;
3
+ }
4
+ export declare function configGlobalCommand(options: ConfigOptions): Promise<void>;
5
+ export {};
6
+ //# sourceMappingURL=config-global.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-global.d.ts","sourceRoot":"","sources":["../../src/commands/config-global.ts"],"names":[],"mappings":"AAIA,UAAU,aAAa;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CA6B/E"}
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.configGlobalCommand = configGlobalCommand;
7
+ const chalk_1 = __importDefault(require("chalk"));
8
+ const state_manager_1 = require("../lib/state-manager");
9
+ const file_utils_1 = require("../utils/file-utils");
10
+ async function configGlobalCommand(options) {
11
+ // If no options provided, show current config
12
+ if (!options.modelsDir) {
13
+ const config = await state_manager_1.stateManager.loadGlobalConfig();
14
+ console.log(chalk_1.default.blue('⚙️ Global Configuration\n'));
15
+ console.log(chalk_1.default.bold('Models Directory:'));
16
+ console.log(` ${config.modelsDirectory}`);
17
+ console.log();
18
+ console.log(chalk_1.default.bold('Defaults:'));
19
+ console.log(` Port: ${config.defaultPort}`);
20
+ console.log(` Threads: ${config.defaults.threads}`);
21
+ console.log(` Context: ${config.defaults.ctxSize}`);
22
+ console.log(` GPU Layers: ${config.defaults.gpuLayers}`);
23
+ console.log();
24
+ console.log(chalk_1.default.dim('Change models directory: llamacpp config --models-dir <path>'));
25
+ return;
26
+ }
27
+ // Update models directory
28
+ if (options.modelsDir) {
29
+ const newPath = (0, file_utils_1.expandHome)(options.modelsDir);
30
+ await state_manager_1.stateManager.setModelsDirectory(newPath);
31
+ console.log(chalk_1.default.green('✅ Models directory updated'));
32
+ console.log(chalk_1.default.dim(` New path: ${newPath}`));
33
+ console.log();
34
+ console.log(chalk_1.default.dim('Note: This does not move existing models. Use:'));
35
+ console.log(chalk_1.default.dim(` mv ~/.llamacpp/models/* ${newPath}/`));
36
+ }
37
+ }
38
+ //# sourceMappingURL=config-global.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-global.js","sourceRoot":"","sources":["../../src/commands/config-global.ts"],"names":[],"mappings":";;;;;AAQA,kDA6BC;AArCD,kDAA0B;AAC1B,wDAAoD;AACpD,oDAAiD;AAM1C,KAAK,UAAU,mBAAmB,CAAC,OAAsB;IAC9D,8CAA8C;IAC9C,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,MAAM,4BAAY,CAAC,gBAAgB,EAAE,CAAC;QAErD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC;QAC3C,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,iBAAiB,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,iBAAiB,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,iBAAiB,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,iBAAiB,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;QAC1D,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC,CAAC;QACvF,OAAO;IACT,CAAC;IAED,0BAA0B;IAC1B,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,IAAA,uBAAU,EAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC9C,MAAM,4BAAY,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,gBAAgB,OAAO,EAAE,CAAC,CAAC,CAAC;QAClD,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC,CAAC;QACzE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,8BAA8B,OAAO,GAAG,CAAC,CAAC,CAAC;IACnE,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/commands/create.ts"],"names":[],"mappings":"AAYA,UAAU,aAAa;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CA6IxF"}
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/commands/create.ts"],"names":[],"mappings":"AAcA,UAAU,aAAa;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAqJxF"}
@@ -39,6 +39,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.createCommand = createCommand;
40
40
  const chalk_1 = __importDefault(require("chalk"));
41
41
  const path = __importStar(require("path"));
42
+ const fs = __importStar(require("fs"));
42
43
  const model_scanner_1 = require("../lib/model-scanner");
43
44
  const state_manager_1 = require("../lib/state-manager");
44
45
  const config_generator_1 = require("../lib/config-generator");
@@ -48,6 +49,7 @@ const status_checker_1 = require("../lib/status-checker");
48
49
  const process_utils_1 = require("../utils/process-utils");
49
50
  const format_utils_1 = require("../utils/format-utils");
50
51
  const file_utils_1 = require("../utils/file-utils");
52
+ const models_dir_setup_1 = require("../lib/models-dir-setup");
51
53
  async function createCommand(model, options) {
52
54
  // Initialize state manager
53
55
  await state_manager_1.stateManager.initialize();
@@ -55,23 +57,30 @@ async function createCommand(model, options) {
55
57
  if (!(await (0, process_utils_1.commandExists)('llama-server'))) {
56
58
  throw new Error('llama-server not found. Install with: brew install llama.cpp');
57
59
  }
58
- // 2. Resolve model path
60
+ // 2. Ensure models directory exists if model is not an absolute path
61
+ if (!path.isAbsolute(model)) {
62
+ const modelsDir = await state_manager_1.stateManager.getModelsDirectory();
63
+ if (!fs.existsSync(modelsDir)) {
64
+ await (0, models_dir_setup_1.ensureModelsDirectory)();
65
+ }
66
+ }
67
+ // 3. Resolve model path
59
68
  const modelPath = await model_scanner_1.modelScanner.resolveModelPath(model);
60
69
  if (!modelPath) {
61
- throw new Error(`Model not found: ${model}\n\nRun: llamacpp list`);
70
+ throw new Error(`Model not found: ${model}\n\nRun: llamacpp ls`);
62
71
  }
63
72
  const modelName = path.basename(modelPath);
64
- // 3. Check if server already exists for this model
73
+ // 4. Check if server already exists for this model
65
74
  const existingServer = await state_manager_1.stateManager.serverExistsForModel(modelPath);
66
75
  if (existingServer) {
67
76
  throw new Error(`Server already exists for ${modelName}\n\nUse: llamacpp server start ${modelName}`);
68
77
  }
69
- // 4. Get model size
78
+ // 5. Get model size
70
79
  const modelSize = await model_scanner_1.modelScanner.getModelSize(modelName);
71
80
  if (!modelSize) {
72
81
  throw new Error(`Failed to read model file: ${modelPath}`);
73
82
  }
74
- // 5. Determine port
83
+ // 6. Determine port
75
84
  let port;
76
85
  if (options.port) {
77
86
  port_manager_1.portManager.validatePort(options.port);
@@ -84,7 +93,7 @@ async function createCommand(model, options) {
84
93
  else {
85
94
  port = await port_manager_1.portManager.findAvailablePort();
86
95
  }
87
- // 6. Generate server configuration
96
+ // 7. Generate server configuration
88
97
  console.log(chalk_1.default.blue(`🚀 Creating server for ${modelName}\n`));
89
98
  // Parse custom flags if provided
90
99
  let customFlags;
@@ -1 +1 @@
1
- {"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/commands/create.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/commands/create.ts"],"names":[],"mappings":"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"}
@@ -8,9 +8,9 @@ const chalk_1 = __importDefault(require("chalk"));
8
8
  const cli_table3_1 = __importDefault(require("cli-table3"));
9
9
  const model_scanner_1 = require("../lib/model-scanner");
10
10
  const format_utils_1 = require("../utils/format-utils");
11
- const file_utils_1 = require("../utils/file-utils");
11
+ const state_manager_1 = require("../lib/state-manager");
12
12
  async function listCommand() {
13
- const modelsDir = (0, file_utils_1.getModelsDir)();
13
+ const modelsDir = await state_manager_1.stateManager.getModelsDirectory();
14
14
  console.log(chalk_1.default.blue(`📦 Available models in ${modelsDir}\n`));
15
15
  const models = await model_scanner_1.modelScanner.scanModels();
16
16
  if (models.length === 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":";;;;;AAMA,kCA8BC;AApCD,kDAA0B;AAC1B,4DAA+B;AAC/B,wDAAoD;AACpD,wDAAqE;AACrE,oDAAmD;AAE5C,KAAK,UAAU,WAAW;IAC/B,MAAM,SAAS,GAAG,IAAA,yBAAY,GAAE,CAAC;IACjC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,0BAA0B,SAAS,IAAI,CAAC,CAAC,CAAC;IAEjE,MAAM,MAAM,GAAG,MAAM,4BAAY,CAAC,UAAU,EAAE,CAAC;IAE/C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAC,CAAC;QACzF,OAAO;IACT,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,oBAAK,CAAC;QACtB,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC;QACnC,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;KACxB,CAAC,CAAC;IAEH,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC;YACT,KAAK,CAAC,QAAQ;YACd,KAAK,CAAC,aAAa;YACnB,IAAA,8BAAe,EAAC,KAAK,CAAC,QAAQ,CAAC;SAChC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAE9B,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,YAAY,MAAM,CAAC,MAAM,YAAY,IAAA,0BAAW,EAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IACvF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC,CAAC;AACvF,CAAC"}
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":";;;;;AAMA,kCA8BC;AApCD,kDAA0B;AAC1B,4DAA+B;AAC/B,wDAAoD;AACpD,wDAAqE;AACrE,wDAAoD;AAE7C,KAAK,UAAU,WAAW;IAC/B,MAAM,SAAS,GAAG,MAAM,4BAAY,CAAC,kBAAkB,EAAE,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,0BAA0B,SAAS,IAAI,CAAC,CAAC,CAAC;IAEjE,MAAM,MAAM,GAAG,MAAM,4BAAY,CAAC,UAAU,EAAE,CAAC;IAE/C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAC,CAAC;QACzF,OAAO;IACT,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,oBAAK,CAAC;QACtB,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC;QACnC,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;KACxB,CAAC,CAAC;IAEH,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC;YACT,KAAK,CAAC,QAAQ;YACd,KAAK,CAAC,aAAa;YACnB,IAAA,8BAAe,EAAC,KAAK,CAAC,QAAQ,CAAC;SAChC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAE9B,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,YAAY,MAAM,CAAC,MAAM,YAAY,IAAA,0BAAW,EAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IACvF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC,CAAC;AACvF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"pull.d.ts","sourceRoot":"","sources":["../../src/commands/pull.ts"],"names":[],"mappings":"AAGA,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAgCzF"}
1
+ {"version":3,"file":"pull.d.ts","sourceRoot":"","sources":["../../src/commands/pull.ts"],"names":[],"mappings":"AAIA,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAmCzF"}
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.pullCommand = pullCommand;
7
7
  const chalk_1 = __importDefault(require("chalk"));
8
8
  const model_downloader_1 = require("../lib/model-downloader");
9
+ const models_dir_setup_1 = require("../lib/models-dir-setup");
9
10
  async function pullCommand(identifier, options) {
10
11
  // Parse repository identifier
11
12
  const parsed = model_downloader_1.modelDownloader.parseHFIdentifier(identifier);
@@ -20,9 +21,11 @@ async function pullCommand(identifier, options) {
20
21
  if (!filename.toLowerCase().endsWith('.gguf')) {
21
22
  filename += '.gguf';
22
23
  }
24
+ // Ensure models directory exists (prompts user if needed)
25
+ const modelsDir = await (0, models_dir_setup_1.ensureModelsDirectory)();
23
26
  // Download the model
24
27
  try {
25
- const modelPath = await model_downloader_1.modelDownloader.downloadModel(parsed.repo, filename);
28
+ const modelPath = await model_downloader_1.modelDownloader.downloadModel(parsed.repo, filename, undefined, modelsDir);
26
29
  console.log();
27
30
  console.log(chalk_1.default.dim(`Create server: llamacpp server create ${filename}`));
28
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pull.js","sourceRoot":"","sources":["../../src/commands/pull.ts"],"names":[],"mappings":";;;;;AAOA,kCAgCC;AAvCD,kDAA0B;AAC1B,8DAA0D;AAMnD,KAAK,UAAU,WAAW,CAAC,UAAkB,EAAE,OAAoB;IACxE,8BAA8B;IAC9B,MAAM,MAAM,GAAG,kCAAe,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAE7D,gEAAgE;IAChE,IAAI,QAAQ,GAAG,OAAO,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC;IAE3C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CACb,wCAAwC;YACxC,oDAAoD;YACpD,yDAAyD,CAC1D,CAAC;IACJ,CAAC;IAED,kCAAkC;IAClC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9C,QAAQ,IAAI,OAAO,CAAC;IACtB,CAAC;IAED,qBAAqB;IACrB,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,kCAAe,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAE7E,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,yCAAyC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC9E,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YACrD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,kEAAkE,CAAC,CAAC,CAAC;QAC7F,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"pull.js","sourceRoot":"","sources":["../../src/commands/pull.ts"],"names":[],"mappings":";;;;;AAQA,kCAmCC;AA3CD,kDAA0B;AAC1B,8DAA0D;AAC1D,8DAAgE;AAMzD,KAAK,UAAU,WAAW,CAAC,UAAkB,EAAE,OAAoB;IACxE,8BAA8B;IAC9B,MAAM,MAAM,GAAG,kCAAe,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAE7D,gEAAgE;IAChE,IAAI,QAAQ,GAAG,OAAO,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC;IAE3C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CACb,wCAAwC;YACxC,oDAAoD;YACpD,yDAAyD,CAC1D,CAAC;IACJ,CAAC;IAED,kCAAkC;IAClC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9C,QAAQ,IAAI,OAAO,CAAC;IACtB,CAAC;IAED,0DAA0D;IAC1D,MAAM,SAAS,GAAG,MAAM,IAAA,wCAAqB,GAAE,CAAC;IAEhD,qBAAqB;IACrB,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,kCAAe,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAEnG,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,yCAAyC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC9E,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YACrD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,kEAAkE,CAAC,CAAC,CAAC;QAC7F,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -6,8 +6,13 @@ export interface DownloadProgress {
6
6
  speed: string;
7
7
  }
8
8
  export declare class ModelDownloader {
9
- private modelsDir;
10
- constructor(modelsDir?: string);
9
+ private modelsDir?;
10
+ private getModelsDirFn?;
11
+ constructor(modelsDir?: string, getModelsDirFn?: () => Promise<string>);
12
+ /**
13
+ * Get the models directory (either configured or default)
14
+ */
15
+ private getModelsDirectory;
11
16
  /**
12
17
  * Parse Hugging Face identifier
13
18
  * Examples:
@@ -33,12 +38,13 @@ export declare class ModelDownloader {
33
38
  /**
34
39
  * Download a model from Hugging Face
35
40
  */
36
- downloadModel(repoId: string, filename: string, onProgress?: (progress: DownloadProgress) => void): Promise<string>;
41
+ downloadModel(repoId: string, filename: string, onProgress?: (progress: DownloadProgress) => void, modelsDir?: string): Promise<string>;
37
42
  /**
38
43
  * List GGUF files in a Hugging Face repository
39
44
  * (This would require calling the HF API - simplified for now)
40
45
  */
41
46
  listGGUFFiles(repoId: string): Promise<string[]>;
42
47
  }
48
+ export declare function getModelDownloader(): ModelDownloader;
43
49
  export declare const modelDownloader: ModelDownloader;
44
50
  //# sourceMappingURL=model-downloader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"model-downloader.d.ts","sourceRoot":"","sources":["../../src/lib/model-downloader.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,SAAS,CAAS;gBAEd,SAAS,CAAC,EAAE,MAAM;IAI9B;;;;;OAKG;IACH,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;IActE;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,SAAS,GAAG,MAAM;IAI3E;;OAEG;IACH,OAAO,CAAC,YAAY;IA4GpB;;OAEG;IACH,OAAO,CAAC,eAAe;IAiBvB;;OAEG;IACG,aAAa,CACjB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,gBAAgB,KAAK,IAAI,GAChD,OAAO,CAAC,MAAM,CAAC;IA2DlB;;;OAGG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAKvD;AAGD,eAAO,MAAM,eAAe,iBAAwB,CAAC"}
1
+ {"version":3,"file":"model-downloader.d.ts","sourceRoot":"","sources":["../../src/lib/model-downloader.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,cAAc,CAAC,CAAwB;gBAEnC,SAAS,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC;IAKtE;;OAEG;YACW,kBAAkB;IAUhC;;;;;OAKG;IACH,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE;IActE;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,SAAS,GAAG,MAAM;IAI3E;;OAEG;IACH,OAAO,CAAC,YAAY;IA4GpB;;OAEG;IACH,OAAO,CAAC,eAAe;IAiBvB;;OAEG;IACG,aAAa,CACjB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,gBAAgB,KAAK,IAAI,EACjD,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC;IA8DlB;;;OAGG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAKvD;AAMD,wBAAgB,kBAAkB,IAAI,eAAe,CAOpD;AAGD,eAAO,MAAM,eAAe,iBAAuB,CAAC"}
@@ -37,6 +37,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.modelDownloader = exports.ModelDownloader = void 0;
40
+ exports.getModelDownloader = getModelDownloader;
40
41
  const https = __importStar(require("https"));
41
42
  const fs = __importStar(require("fs"));
42
43
  const path = __importStar(require("path"));
@@ -44,8 +45,21 @@ const chalk_1 = __importDefault(require("chalk"));
44
45
  const file_utils_1 = require("../utils/file-utils");
45
46
  const format_utils_1 = require("../utils/format-utils");
46
47
  class ModelDownloader {
47
- constructor(modelsDir) {
48
- this.modelsDir = modelsDir || (0, file_utils_1.getModelsDir)();
48
+ constructor(modelsDir, getModelsDirFn) {
49
+ this.modelsDir = modelsDir;
50
+ this.getModelsDirFn = getModelsDirFn;
51
+ }
52
+ /**
53
+ * Get the models directory (either configured or default)
54
+ */
55
+ async getModelsDirectory() {
56
+ if (this.modelsDir) {
57
+ return this.modelsDir;
58
+ }
59
+ if (this.getModelsDirFn) {
60
+ return await this.getModelsDirFn();
61
+ }
62
+ return (0, file_utils_1.getModelsDir)();
49
63
  }
50
64
  /**
51
65
  * Parse Hugging Face identifier
@@ -184,14 +198,16 @@ class ModelDownloader {
184
198
  /**
185
199
  * Download a model from Hugging Face
186
200
  */
187
- async downloadModel(repoId, filename, onProgress) {
201
+ async downloadModel(repoId, filename, onProgress, modelsDir) {
202
+ // Use provided models directory or get from config
203
+ const targetDir = modelsDir || await this.getModelsDirectory();
188
204
  console.log(chalk_1.default.blue(`📥 Downloading ${filename} from Hugging Face...`));
189
205
  console.log(chalk_1.default.dim(`Repository: ${repoId}`));
190
- console.log(chalk_1.default.dim(`Destination: ${this.modelsDir}`));
206
+ console.log(chalk_1.default.dim(`Destination: ${targetDir}`));
191
207
  console.log();
192
208
  // Build download URL
193
209
  const url = this.buildDownloadUrl(repoId, filename);
194
- const destPath = path.join(this.modelsDir, filename);
210
+ const destPath = path.join(targetDir, filename);
195
211
  // Check if file already exists
196
212
  if (fs.existsSync(destPath)) {
197
213
  console.log(chalk_1.default.yellow(`⚠️ File already exists: ${filename}`));
@@ -243,6 +259,17 @@ class ModelDownloader {
243
259
  }
244
260
  }
245
261
  exports.ModelDownloader = ModelDownloader;
246
- // Export singleton instance
247
- exports.modelDownloader = new ModelDownloader();
262
+ // Create singleton that uses configured models directory
263
+ // Use lazy import to avoid circular dependency
264
+ let _modelDownloader = null;
265
+ function getModelDownloader() {
266
+ if (!_modelDownloader) {
267
+ // Import stateManager dynamically to avoid circular dependency
268
+ const { stateManager } = require('./state-manager');
269
+ _modelDownloader = new ModelDownloader(undefined, () => stateManager.getModelsDirectory());
270
+ }
271
+ return _modelDownloader;
272
+ }
273
+ // Export singleton instance for backward compatibility
274
+ exports.modelDownloader = getModelDownloader();
248
275
  //# sourceMappingURL=model-downloader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"model-downloader.js","sourceRoot":"","sources":["../../src/lib/model-downloader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-downloader.js","sourceRoot":"","sources":["../../src/lib/model-downloader.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,12 @@
1
1
  import { ModelInfo } from '../types/model-info';
2
2
  export declare class ModelScanner {
3
- private modelsDir;
4
- constructor(modelsDir?: string);
3
+ private modelsDir?;
4
+ private getModelsDirFn?;
5
+ constructor(modelsDir?: string, getModelsDirFn?: () => Promise<string>);
6
+ /**
7
+ * Get the models directory (either configured or default)
8
+ */
9
+ private getModelsDirectory;
5
10
  /**
6
11
  * Scan models directory for GGUF files
7
12
  */
@@ -27,5 +32,6 @@ export declare class ModelScanner {
27
32
  */
28
33
  getTotalSize(): Promise<number>;
29
34
  }
35
+ export declare function getModelScanner(): ModelScanner;
30
36
  export declare const modelScanner: ModelScanner;
31
37
  //# sourceMappingURL=model-scanner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"model-scanner.d.ts","sourceRoot":"","sources":["../../src/lib/model-scanner.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAIhD,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAAS;gBAEd,SAAS,CAAC,EAAE,MAAM;IAI9B;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAuBxC;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IA2B/D;;OAEG;IACG,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKvD;;OAEG;IACG,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA0BhE;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAK5D;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;CAItC;AAGD,eAAO,MAAM,YAAY,cAAqB,CAAC"}
1
+ {"version":3,"file":"model-scanner.d.ts","sourceRoot":"","sources":["../../src/lib/model-scanner.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAIhD,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,cAAc,CAAC,CAAwB;gBAEnC,SAAS,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC;IAKtE;;OAEG;YACW,kBAAkB;IAUhC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAwBxC;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IA4B/D;;OAEG;IACG,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKvD;;OAEG;IACG,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA4BhE;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAK5D;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;CAItC;AAMD,wBAAgB,eAAe,IAAI,YAAY,CAO9C;AAGD,eAAO,MAAM,YAAY,cAAoB,CAAC"}
@@ -34,20 +34,35 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.modelScanner = exports.ModelScanner = void 0;
37
+ exports.getModelScanner = getModelScanner;
37
38
  const fs = __importStar(require("fs/promises"));
38
39
  const path = __importStar(require("path"));
39
40
  const file_utils_1 = require("../utils/file-utils");
40
41
  const format_utils_1 = require("../utils/format-utils");
41
42
  class ModelScanner {
42
- constructor(modelsDir) {
43
- this.modelsDir = modelsDir || (0, file_utils_1.getModelsDir)();
43
+ constructor(modelsDir, getModelsDirFn) {
44
+ this.modelsDir = modelsDir;
45
+ this.getModelsDirFn = getModelsDirFn;
46
+ }
47
+ /**
48
+ * Get the models directory (either configured or default)
49
+ */
50
+ async getModelsDirectory() {
51
+ if (this.modelsDir) {
52
+ return this.modelsDir;
53
+ }
54
+ if (this.getModelsDirFn) {
55
+ return await this.getModelsDirFn();
56
+ }
57
+ return (0, file_utils_1.getModelsDir)();
44
58
  }
45
59
  /**
46
60
  * Scan models directory for GGUF files
47
61
  */
48
62
  async scanModels() {
63
+ const modelsDir = await this.getModelsDirectory();
49
64
  try {
50
- const files = await fs.readdir(this.modelsDir);
65
+ const files = await fs.readdir(modelsDir);
51
66
  const ggufFiles = files.filter((f) => f.toLowerCase().endsWith('.gguf'));
52
67
  const models = [];
53
68
  for (const file of ggufFiles) {
@@ -69,7 +84,8 @@ class ModelScanner {
69
84
  * Get information about a specific model file
70
85
  */
71
86
  async getModelInfo(filename) {
72
- const modelPath = path.join(this.modelsDir, filename);
87
+ const modelsDir = await this.getModelsDirectory();
88
+ const modelPath = path.join(modelsDir, filename);
73
89
  try {
74
90
  const stats = await fs.stat(modelPath);
75
91
  return {
@@ -108,8 +124,9 @@ class ModelScanner {
108
124
  if (path.isAbsolute(filename)) {
109
125
  return filename;
110
126
  }
127
+ const modelsDir = await this.getModelsDirectory();
111
128
  // Try in models directory
112
- const modelPath = path.join(this.modelsDir, filename);
129
+ const modelPath = path.join(modelsDir, filename);
113
130
  const modelInfo = await this.getModelInfo(filename);
114
131
  if (modelInfo && modelInfo.exists) {
115
132
  return modelPath;
@@ -119,7 +136,7 @@ class ModelScanner {
119
136
  const withExtension = `${filename}.gguf`;
120
137
  const modelInfoWithExt = await this.getModelInfo(withExtension);
121
138
  if (modelInfoWithExt && modelInfoWithExt.exists) {
122
- return path.join(this.modelsDir, withExtension);
139
+ return path.join(modelsDir, withExtension);
123
140
  }
124
141
  }
125
142
  return null;
@@ -140,6 +157,17 @@ class ModelScanner {
140
157
  }
141
158
  }
142
159
  exports.ModelScanner = ModelScanner;
143
- // Export singleton instance
144
- exports.modelScanner = new ModelScanner();
160
+ // Create singleton that uses configured models directory
161
+ // Use lazy import to avoid circular dependency
162
+ let _modelScanner = null;
163
+ function getModelScanner() {
164
+ if (!_modelScanner) {
165
+ // Import stateManager dynamically to avoid circular dependency
166
+ const { stateManager } = require('./state-manager');
167
+ _modelScanner = new ModelScanner(undefined, () => stateManager.getModelsDirectory());
168
+ }
169
+ return _modelScanner;
170
+ }
171
+ // Export singleton instance for backward compatibility
172
+ exports.modelScanner = getModelScanner();
145
173
  //# sourceMappingURL=model-scanner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"model-scanner.js","sourceRoot":"","sources":["../../src/lib/model-scanner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-scanner.js","sourceRoot":"","sources":["../../src/lib/model-scanner.ts"],"names":[],"mappings":"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"}