cmdr-agent 1.3.0 → 2.0.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.
- package/dist/bin/cmdr.js +2 -1
- package/dist/bin/cmdr.js.map +1 -1
- package/dist/src/agents/executor.d.ts +32 -0
- package/dist/src/agents/executor.d.ts.map +1 -0
- package/dist/src/agents/executor.js +50 -0
- package/dist/src/agents/executor.js.map +1 -0
- package/dist/src/agents/index.d.ts +7 -0
- package/dist/src/agents/index.d.ts.map +1 -0
- package/dist/src/agents/index.js +7 -0
- package/dist/src/agents/index.js.map +1 -0
- package/dist/src/agents/registry.d.ts +36 -0
- package/dist/src/agents/registry.d.ts.map +1 -0
- package/dist/src/agents/registry.js +168 -0
- package/dist/src/agents/registry.js.map +1 -0
- package/dist/src/agents/subagent-tool.d.ts +27 -0
- package/dist/src/agents/subagent-tool.d.ts.map +1 -0
- package/dist/src/agents/subagent-tool.js +36 -0
- package/dist/src/agents/subagent-tool.js.map +1 -0
- package/dist/src/cli/args.d.ts +1 -0
- package/dist/src/cli/args.d.ts.map +1 -1
- package/dist/src/cli/args.js +4 -0
- package/dist/src/cli/args.js.map +1 -1
- package/dist/src/cli/commands.d.ts.map +1 -1
- package/dist/src/cli/commands.js +92 -4
- package/dist/src/cli/commands.js.map +1 -1
- package/dist/src/cli/ink/App.d.ts +4 -0
- package/dist/src/cli/ink/App.d.ts.map +1 -1
- package/dist/src/cli/ink/App.js +164 -20
- package/dist/src/cli/ink/App.js.map +1 -1
- package/dist/src/cli/ink/StatusBar.d.ts +17 -0
- package/dist/src/cli/ink/StatusBar.d.ts.map +1 -0
- package/dist/src/cli/ink/StatusBar.js +32 -0
- package/dist/src/cli/ink/StatusBar.js.map +1 -0
- package/dist/src/cli/repl.d.ts +1 -0
- package/dist/src/cli/repl.d.ts.map +1 -1
- package/dist/src/cli/repl.js +112 -3
- package/dist/src/cli/repl.js.map +1 -1
- package/dist/src/cli/theme.d.ts +42 -22
- package/dist/src/cli/theme.d.ts.map +1 -1
- package/dist/src/cli/theme.js +25 -1
- package/dist/src/cli/theme.js.map +1 -1
- package/dist/src/cli/themes.d.ts +57 -0
- package/dist/src/cli/themes.d.ts.map +1 -0
- package/dist/src/cli/themes.js +98 -0
- package/dist/src/cli/themes.js.map +1 -0
- package/dist/src/commands/index.d.ts +3 -0
- package/dist/src/commands/index.d.ts.map +1 -0
- package/dist/src/commands/index.js +2 -0
- package/dist/src/commands/index.js.map +1 -0
- package/dist/src/commands/loader.d.ts +35 -0
- package/dist/src/commands/loader.d.ts.map +1 -0
- package/dist/src/commands/loader.js +134 -0
- package/dist/src/commands/loader.js.map +1 -0
- package/dist/src/config/config-loader.d.ts.map +1 -1
- package/dist/src/config/config-loader.js +2 -0
- package/dist/src/config/config-loader.js.map +1 -1
- package/dist/src/config/defaults.d.ts.map +1 -1
- package/dist/src/config/defaults.js +1 -0
- package/dist/src/config/defaults.js.map +1 -1
- package/dist/src/config/schema.d.ts +3 -0
- package/dist/src/config/schema.d.ts.map +1 -1
- package/dist/src/config/schema.js +1 -0
- package/dist/src/config/schema.js.map +1 -1
- package/dist/src/core/agent-runner.d.ts.map +1 -1
- package/dist/src/core/agent-runner.js +29 -4
- package/dist/src/core/agent-runner.js.map +1 -1
- package/dist/src/core/agent.d.ts +1 -1
- package/dist/src/core/agent.d.ts.map +1 -1
- package/dist/src/core/agent.js +4 -3
- package/dist/src/core/agent.js.map +1 -1
- package/dist/src/core/types.d.ts +1 -0
- package/dist/src/core/types.d.ts.map +1 -1
- package/dist/src/llm/model-registry.d.ts +25 -0
- package/dist/src/llm/model-registry.d.ts.map +1 -1
- package/dist/src/llm/model-registry.js +217 -24
- package/dist/src/llm/model-registry.js.map +1 -1
- package/dist/src/llm/model-watcher.d.ts +26 -0
- package/dist/src/llm/model-watcher.d.ts.map +1 -0
- package/dist/src/llm/model-watcher.js +130 -0
- package/dist/src/llm/model-watcher.js.map +1 -0
- package/dist/src/llm/ollama.d.ts +5 -0
- package/dist/src/llm/ollama.d.ts.map +1 -1
- package/dist/src/llm/ollama.js +122 -11
- package/dist/src/llm/ollama.js.map +1 -1
- package/dist/src/session/project-context.d.ts.map +1 -1
- package/dist/src/session/project-context.js +54 -4
- package/dist/src/session/project-context.js.map +1 -1
- package/package.json +2 -1
|
@@ -1,7 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Model registry — known models and their capabilities.
|
|
3
|
+
*
|
|
4
|
+
* Seed data provides accurate defaults for well-known models.
|
|
5
|
+
* Dynamic models discovered from Ollama are merged on top at runtime.
|
|
3
6
|
*/
|
|
4
|
-
|
|
7
|
+
// ---------------------------------------------------------------------------
|
|
8
|
+
// Seed data — accurate context lengths + capabilities for popular models.
|
|
9
|
+
// Used as fallback when Ollama /api/show is unavailable.
|
|
10
|
+
// ---------------------------------------------------------------------------
|
|
11
|
+
const SEED_MODELS = [
|
|
12
|
+
// Qwen family
|
|
5
13
|
{ name: 'qwen2.5-coder:7b', contextLength: 32768, supportsTools: true, parameterSize: '7B', recommended: 'lightweight' },
|
|
6
14
|
{ name: 'qwen2.5-coder:14b', contextLength: 32768, supportsTools: true, parameterSize: '14B', recommended: 'midrange' },
|
|
7
15
|
{ name: 'qwen2.5-coder:32b', contextLength: 32768, supportsTools: true, parameterSize: '32B', recommended: 'heavy' },
|
|
@@ -9,29 +17,216 @@ const KNOWN_MODELS = [
|
|
|
9
17
|
{ name: 'qwen2.5:7b', contextLength: 32768, supportsTools: true, parameterSize: '7B', recommended: 'lightweight' },
|
|
10
18
|
{ name: 'qwen2.5:14b', contextLength: 32768, supportsTools: true, parameterSize: '14B', recommended: 'midrange' },
|
|
11
19
|
{ name: 'qwen2.5:32b', contextLength: 32768, supportsTools: true, parameterSize: '32B', recommended: 'heavy' },
|
|
20
|
+
{ name: 'qwen3:8b', contextLength: 40960, supportsTools: true, parameterSize: '8B', recommended: 'lightweight' },
|
|
21
|
+
{ name: 'qwen3:14b', contextLength: 40960, supportsTools: true, parameterSize: '14B', recommended: 'midrange' },
|
|
22
|
+
{ name: 'qwen3:32b', contextLength: 40960, supportsTools: true, parameterSize: '32B', recommended: 'heavy' },
|
|
23
|
+
// Llama family
|
|
12
24
|
{ name: 'llama3.1:8b', contextLength: 131072, supportsTools: true, parameterSize: '8B', recommended: 'lightweight' },
|
|
13
25
|
{ name: 'llama3.1:70b', contextLength: 131072, supportsTools: true, parameterSize: '70B', recommended: 'heavy' },
|
|
14
26
|
{ name: 'llama3.2:3b', contextLength: 131072, supportsTools: true, parameterSize: '3B', recommended: 'lightweight' },
|
|
27
|
+
{ name: 'llama3.3:70b', contextLength: 131072, supportsTools: true, parameterSize: '70B', recommended: 'heavy' },
|
|
28
|
+
{ name: 'llama4:scout', contextLength: 131072, supportsTools: true, parameterSize: '109B', recommended: 'heavy' },
|
|
29
|
+
// Mistral family
|
|
30
|
+
{ name: 'mistral:7b', contextLength: 32768, supportsTools: true, parameterSize: '7B', recommended: 'lightweight' },
|
|
15
31
|
{ name: 'mistral-nemo:12b', contextLength: 128000, supportsTools: true, parameterSize: '12B', recommended: 'midrange' },
|
|
32
|
+
{ name: 'mistral-small:24b', contextLength: 32768, supportsTools: true, parameterSize: '24B', recommended: 'midrange' },
|
|
33
|
+
// Gemma family
|
|
34
|
+
{ name: 'gemma2:9b', contextLength: 8192, supportsTools: true, parameterSize: '9B', recommended: 'lightweight' },
|
|
35
|
+
{ name: 'gemma2:27b', contextLength: 8192, supportsTools: true, parameterSize: '27B', recommended: 'midrange' },
|
|
36
|
+
{ name: 'gemma3:12b', contextLength: 32768, supportsTools: true, parameterSize: '12B', recommended: 'midrange' },
|
|
37
|
+
{ name: 'gemma3:27b', contextLength: 32768, supportsTools: true, parameterSize: '27B', recommended: 'heavy' },
|
|
38
|
+
{ name: 'gemma4:12b', contextLength: 32768, supportsTools: true, parameterSize: '12B', recommended: 'midrange' },
|
|
16
39
|
{ name: 'gemma4:26b', contextLength: 262144, supportsTools: false, parameterSize: '25.8B', recommended: 'heavy' },
|
|
40
|
+
{ name: 'gemma4:27b', contextLength: 32768, supportsTools: true, parameterSize: '27B', recommended: 'heavy' },
|
|
17
41
|
{ name: 'gemma4:e4b', contextLength: 131072, supportsTools: false, parameterSize: '4B', recommended: 'lightweight' },
|
|
18
42
|
{ name: 'gemma4:e2b', contextLength: 131072, supportsTools: false, parameterSize: '2B', recommended: 'lightweight' },
|
|
43
|
+
// Phi family
|
|
44
|
+
{ name: 'phi3:3.8b', contextLength: 4096, supportsTools: true, parameterSize: '3.8B', recommended: 'lightweight' },
|
|
45
|
+
{ name: 'phi3:14b', contextLength: 4096, supportsTools: true, parameterSize: '14B', recommended: 'midrange' },
|
|
46
|
+
{ name: 'phi4:14b', contextLength: 16384, supportsTools: true, parameterSize: '14B', recommended: 'midrange' },
|
|
47
|
+
{ name: 'phi-3:latest', contextLength: 131072, supportsTools: true, parameterSize: '3.8B', recommended: 'lightweight' },
|
|
48
|
+
{ name: 'phi-4:latest', contextLength: 16384, supportsTools: true, parameterSize: '14B', recommended: 'midrange' },
|
|
49
|
+
// DeepSeek family
|
|
19
50
|
{ name: 'deepseek-coder-v2:16b', contextLength: 131072, supportsTools: true, parameterSize: '16B', recommended: 'midrange' },
|
|
20
51
|
{ name: 'deepseek-coder:6.7b', contextLength: 16384, supportsTools: true, parameterSize: '6.7B', recommended: 'lightweight' },
|
|
52
|
+
{ name: 'deepseek-v3:latest', contextLength: 65536, supportsTools: true, parameterSize: '685B', recommended: 'heavy' },
|
|
53
|
+
// Command-R family
|
|
54
|
+
{ name: 'command-r:latest', contextLength: 131072, supportsTools: true, parameterSize: '35B', recommended: 'heavy' },
|
|
55
|
+
{ name: 'command-r:35b', contextLength: 131072, supportsTools: true, parameterSize: '35B', recommended: 'heavy' },
|
|
56
|
+
{ name: 'command-r-plus:104b', contextLength: 131072, supportsTools: true, parameterSize: '104B', recommended: 'heavy' },
|
|
57
|
+
// Others
|
|
21
58
|
{ name: 'codellama:34b', contextLength: 16384, supportsTools: false, parameterSize: '34B', recommended: 'heavy' },
|
|
22
59
|
{ name: 'dolphin3:latest', contextLength: 131072, supportsTools: false, parameterSize: '8B', recommended: 'lightweight' },
|
|
23
|
-
{ name: '
|
|
24
|
-
{ name: '
|
|
25
|
-
{ name: '
|
|
60
|
+
{ name: 'granite3.1-dense:8b', contextLength: 131072, supportsTools: true, parameterSize: '8B', recommended: 'lightweight' },
|
|
61
|
+
{ name: 'nemotron:70b', contextLength: 32768, supportsTools: true, parameterSize: '70B', recommended: 'heavy' },
|
|
62
|
+
{ name: 'hermes3:8b', contextLength: 131072, supportsTools: true, parameterSize: '8B', recommended: 'lightweight' },
|
|
63
|
+
{ name: 'yi:34b', contextLength: 4096, supportsTools: false, parameterSize: '34B', recommended: 'heavy' },
|
|
64
|
+
// Cloud / proxy models
|
|
26
65
|
{ name: 'minimax-m2.5:cloud', contextLength: 1048576, supportsTools: true, parameterSize: 'cloud', recommended: 'heavy' },
|
|
66
|
+
{ name: 'minimax-m2.7:cloud', contextLength: 1048576, supportsTools: true, parameterSize: 'cloud', recommended: 'heavy' },
|
|
27
67
|
];
|
|
68
|
+
// ---------------------------------------------------------------------------
|
|
69
|
+
// Dynamic registry — mutable map populated from seed + Ollama discovery
|
|
70
|
+
// ---------------------------------------------------------------------------
|
|
71
|
+
const dynamicRegistry = new Map();
|
|
72
|
+
// Initialize with seed data
|
|
73
|
+
for (const model of SEED_MODELS) {
|
|
74
|
+
dynamicRegistry.set(model.name, model);
|
|
75
|
+
}
|
|
76
|
+
/** Register or update a model in the dynamic registry. */
|
|
77
|
+
export function registerModel(info) {
|
|
78
|
+
dynamicRegistry.set(info.name, info);
|
|
79
|
+
}
|
|
80
|
+
/** Remove a model from the dynamic registry. */
|
|
81
|
+
export function unregisterModel(name) {
|
|
82
|
+
dynamicRegistry.delete(name);
|
|
83
|
+
}
|
|
84
|
+
/** Get all models in the registry (seed + dynamically discovered). */
|
|
85
|
+
export function getAllModels() {
|
|
86
|
+
return [...dynamicRegistry.values()];
|
|
87
|
+
}
|
|
88
|
+
/** Get the set of model names currently in the registry. */
|
|
89
|
+
export function getRegisteredModelNames() {
|
|
90
|
+
return new Set(dynamicRegistry.keys());
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Lookup model info — checks dynamic registry first (exact match),
|
|
94
|
+
* then falls back to prefix matching against seed data.
|
|
95
|
+
*/
|
|
28
96
|
export function getModelInfo(name) {
|
|
29
|
-
|
|
97
|
+
// Exact match in dynamic registry
|
|
98
|
+
const exact = dynamicRegistry.get(name);
|
|
99
|
+
if (exact)
|
|
100
|
+
return exact;
|
|
101
|
+
// Prefix match (e.g. "qwen2.5-coder" matches "qwen2.5-coder:14b")
|
|
102
|
+
for (const model of dynamicRegistry.values()) {
|
|
103
|
+
if (name.startsWith(model.name.split(':')[0]))
|
|
104
|
+
return model;
|
|
105
|
+
}
|
|
106
|
+
return undefined;
|
|
30
107
|
}
|
|
31
108
|
export function getDefaultContextLength(model) {
|
|
32
109
|
const info = getModelInfo(model);
|
|
33
110
|
return info?.contextLength ?? 8192;
|
|
34
111
|
}
|
|
112
|
+
// ---------------------------------------------------------------------------
|
|
113
|
+
// Families known to support native tool calling — used during discovery
|
|
114
|
+
// ---------------------------------------------------------------------------
|
|
115
|
+
export const TOOL_CAPABLE_FAMILIES = new Set([
|
|
116
|
+
'qwen2', 'qwen2.5', 'qwen3', 'qwen3moe',
|
|
117
|
+
'llama3.1', 'llama3.2', 'llama3.3', 'llama4',
|
|
118
|
+
'mistral', 'mistral-nemo',
|
|
119
|
+
'command-r', 'firefunction',
|
|
120
|
+
'granite', 'nemotron', 'hermes3',
|
|
121
|
+
'minimax',
|
|
122
|
+
'gemma', 'gemma2', 'gemma3', 'gemma4',
|
|
123
|
+
'phi3', 'phi4',
|
|
124
|
+
'deepseek', 'deepseek-v3',
|
|
125
|
+
'yi',
|
|
126
|
+
]);
|
|
127
|
+
/** Infer whether a model family supports tools. */
|
|
128
|
+
export function familySupportsTools(family) {
|
|
129
|
+
const f = family.toLowerCase();
|
|
130
|
+
if (TOOL_CAPABLE_FAMILIES.has(f))
|
|
131
|
+
return true;
|
|
132
|
+
// Fuzzy fallback for sub-families
|
|
133
|
+
for (const known of TOOL_CAPABLE_FAMILIES) {
|
|
134
|
+
if (f.includes(known) || known.includes(f))
|
|
135
|
+
return true;
|
|
136
|
+
}
|
|
137
|
+
return false;
|
|
138
|
+
}
|
|
139
|
+
/** Infer recommended tier from parameter size string. */
|
|
140
|
+
export function inferTier(parameterSize) {
|
|
141
|
+
const cleaned = parameterSize.toLowerCase().replace(/[^0-9.]/g, '');
|
|
142
|
+
const num = parseFloat(cleaned);
|
|
143
|
+
if (isNaN(num) || parameterSize.toLowerCase().includes('cloud'))
|
|
144
|
+
return 'heavy';
|
|
145
|
+
if (num <= 9)
|
|
146
|
+
return 'lightweight';
|
|
147
|
+
if (num <= 30)
|
|
148
|
+
return 'midrange';
|
|
149
|
+
return 'heavy';
|
|
150
|
+
}
|
|
151
|
+
/** Extract context length from an Ollama /api/show response. */
|
|
152
|
+
function extractContextLength(data) {
|
|
153
|
+
const modelInfo = data.model_info;
|
|
154
|
+
if (modelInfo) {
|
|
155
|
+
for (const [key, value] of Object.entries(modelInfo)) {
|
|
156
|
+
if (key.endsWith('context_length') && typeof value === 'number') {
|
|
157
|
+
return value;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
const params = data.parameters;
|
|
162
|
+
if (params) {
|
|
163
|
+
const match = params.match(/num_ctx\s+(\d+)/);
|
|
164
|
+
if (match)
|
|
165
|
+
return parseInt(match[1], 10);
|
|
166
|
+
}
|
|
167
|
+
return 8192;
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Discover all models from Ollama and register them in the dynamic registry.
|
|
171
|
+
* Returns the list of newly added model names.
|
|
172
|
+
*/
|
|
173
|
+
export async function discoverOllamaModels(ollamaUrl = 'http://localhost:11434') {
|
|
174
|
+
const newModels = [];
|
|
175
|
+
try {
|
|
176
|
+
const tagsRes = await fetch(`${ollamaUrl}/api/tags`);
|
|
177
|
+
if (!tagsRes.ok)
|
|
178
|
+
return newModels;
|
|
179
|
+
const tagsData = await tagsRes.json();
|
|
180
|
+
for (const { name } of tagsData.models) {
|
|
181
|
+
// Skip if we already have an exact entry from seed data
|
|
182
|
+
if (dynamicRegistry.has(name))
|
|
183
|
+
continue;
|
|
184
|
+
// Probe model details
|
|
185
|
+
try {
|
|
186
|
+
const showRes = await fetch(`${ollamaUrl}/api/show`, {
|
|
187
|
+
method: 'POST',
|
|
188
|
+
headers: { 'Content-Type': 'application/json' },
|
|
189
|
+
body: JSON.stringify({ name }),
|
|
190
|
+
});
|
|
191
|
+
if (!showRes.ok) {
|
|
192
|
+
// Can't probe — register with conservative defaults
|
|
193
|
+
registerModel({
|
|
194
|
+
name,
|
|
195
|
+
contextLength: 8192,
|
|
196
|
+
supportsTools: false,
|
|
197
|
+
parameterSize: 'unknown',
|
|
198
|
+
recommended: 'midrange',
|
|
199
|
+
});
|
|
200
|
+
newModels.push(name);
|
|
201
|
+
continue;
|
|
202
|
+
}
|
|
203
|
+
const showData = await showRes.json();
|
|
204
|
+
const family = showData.details?.family?.toLowerCase() ?? '';
|
|
205
|
+
const parameterSize = showData.details?.parameter_size ?? 'unknown';
|
|
206
|
+
const contextLength = extractContextLength(showData);
|
|
207
|
+
const supportsTools = familySupportsTools(family);
|
|
208
|
+
const recommended = inferTier(parameterSize);
|
|
209
|
+
registerModel({ name, contextLength, supportsTools, parameterSize, recommended });
|
|
210
|
+
newModels.push(name);
|
|
211
|
+
}
|
|
212
|
+
catch {
|
|
213
|
+
// Individual model probe failed — register minimal entry
|
|
214
|
+
registerModel({
|
|
215
|
+
name,
|
|
216
|
+
contextLength: 8192,
|
|
217
|
+
supportsTools: false,
|
|
218
|
+
parameterSize: 'unknown',
|
|
219
|
+
recommended: 'midrange',
|
|
220
|
+
});
|
|
221
|
+
newModels.push(name);
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
catch {
|
|
226
|
+
// Ollama unreachable — no-op
|
|
227
|
+
}
|
|
228
|
+
return newModels;
|
|
229
|
+
}
|
|
35
230
|
/**
|
|
36
231
|
* Query Ollama /api/show for the actual context length of a model.
|
|
37
232
|
* Falls back to getDefaultContextLength if the query fails.
|
|
@@ -50,23 +245,18 @@ export async function resolveContextLength(model, ollamaUrl = 'http://localhost:
|
|
|
50
245
|
});
|
|
51
246
|
if (res.ok) {
|
|
52
247
|
const data = await res.json();
|
|
53
|
-
|
|
54
|
-
//
|
|
55
|
-
const
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
if (params) {
|
|
66
|
-
const match = params.match(/num_ctx\s+(\d+)/);
|
|
67
|
-
if (match)
|
|
68
|
-
return parseInt(match[1], 10);
|
|
69
|
-
}
|
|
248
|
+
const contextLength = extractContextLength(data);
|
|
249
|
+
// Auto-register discovered model
|
|
250
|
+
const family = data.details?.family?.toLowerCase() ?? '';
|
|
251
|
+
const parameterSize = data.details?.parameter_size ?? 'unknown';
|
|
252
|
+
registerModel({
|
|
253
|
+
name: model,
|
|
254
|
+
contextLength,
|
|
255
|
+
supportsTools: familySupportsTools(family),
|
|
256
|
+
parameterSize,
|
|
257
|
+
recommended: inferTier(parameterSize),
|
|
258
|
+
});
|
|
259
|
+
return contextLength;
|
|
70
260
|
}
|
|
71
261
|
}
|
|
72
262
|
catch {
|
|
@@ -75,7 +265,10 @@ export async function resolveContextLength(model, ollamaUrl = 'http://localhost:
|
|
|
75
265
|
return 8192;
|
|
76
266
|
}
|
|
77
267
|
export function getRecommendedModel(tier) {
|
|
78
|
-
const model
|
|
79
|
-
|
|
268
|
+
for (const model of dynamicRegistry.values()) {
|
|
269
|
+
if (model.recommended === tier && model.name.includes('coder'))
|
|
270
|
+
return model.name;
|
|
271
|
+
}
|
|
272
|
+
return 'qwen2.5-coder:14b';
|
|
80
273
|
}
|
|
81
274
|
//# sourceMappingURL=model-registry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-registry.js","sourceRoot":"","sources":["../../../src/llm/model-registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"model-registry.js","sourceRoot":"","sources":["../../../src/llm/model-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ModelWatcher — periodically polls Ollama for new models and updates the registry.
|
|
3
|
+
*
|
|
4
|
+
* Lightweight: only hits /api/tags each interval. Full /api/show probes are only
|
|
5
|
+
* performed for newly discovered models not yet in the registry.
|
|
6
|
+
*/
|
|
7
|
+
export type ModelAddedCallback = (name: string) => void;
|
|
8
|
+
export declare class ModelWatcher {
|
|
9
|
+
private readonly ollamaUrl;
|
|
10
|
+
private readonly pollIntervalMs;
|
|
11
|
+
private intervalId;
|
|
12
|
+
private readonly callbacks;
|
|
13
|
+
private running;
|
|
14
|
+
constructor(ollamaUrl?: string, pollIntervalMs?: number);
|
|
15
|
+
/** Register a callback fired when a new model is discovered. */
|
|
16
|
+
onModelAdded(cb: ModelAddedCallback): void;
|
|
17
|
+
/** Start periodic polling. */
|
|
18
|
+
start(): void;
|
|
19
|
+
/** Stop polling. */
|
|
20
|
+
stop(): void;
|
|
21
|
+
/** Single poll iteration: check for new models. */
|
|
22
|
+
private poll;
|
|
23
|
+
/** Probe a single model via /api/show and register it. */
|
|
24
|
+
private probeAndRegister;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=model-watcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-watcher.d.ts","sourceRoot":"","sources":["../../../src/llm/model-watcher.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,MAAM,MAAM,kBAAkB,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;AAEvD,qBAAa,YAAY;IAMrB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,cAAc;IANjC,OAAO,CAAC,UAAU,CAA4C;IAC9D,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2B;IACrD,OAAO,CAAC,OAAO,CAAQ;gBAGJ,SAAS,GAAE,MAAiC,EAC5C,cAAc,GAAE,MAAe;IAGlD,gEAAgE;IAChE,YAAY,CAAC,EAAE,EAAE,kBAAkB,GAAG,IAAI;IAI1C,8BAA8B;IAC9B,KAAK,IAAI,IAAI;IAcb,oBAAoB;IACpB,IAAI,IAAI,IAAI;IAQZ,mDAAmD;YACrC,IAAI;IAmBlB,0DAA0D;YAC5C,gBAAgB;CAkE/B"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ModelWatcher — periodically polls Ollama for new models and updates the registry.
|
|
3
|
+
*
|
|
4
|
+
* Lightweight: only hits /api/tags each interval. Full /api/show probes are only
|
|
5
|
+
* performed for newly discovered models not yet in the registry.
|
|
6
|
+
*/
|
|
7
|
+
import { getRegisteredModelNames, registerModel, familySupportsTools, inferTier, } from './model-registry.js';
|
|
8
|
+
export class ModelWatcher {
|
|
9
|
+
ollamaUrl;
|
|
10
|
+
pollIntervalMs;
|
|
11
|
+
intervalId;
|
|
12
|
+
callbacks = [];
|
|
13
|
+
running = false;
|
|
14
|
+
constructor(ollamaUrl = 'http://localhost:11434', pollIntervalMs = 30_000) {
|
|
15
|
+
this.ollamaUrl = ollamaUrl;
|
|
16
|
+
this.pollIntervalMs = pollIntervalMs;
|
|
17
|
+
}
|
|
18
|
+
/** Register a callback fired when a new model is discovered. */
|
|
19
|
+
onModelAdded(cb) {
|
|
20
|
+
this.callbacks.push(cb);
|
|
21
|
+
}
|
|
22
|
+
/** Start periodic polling. */
|
|
23
|
+
start() {
|
|
24
|
+
if (this.running)
|
|
25
|
+
return;
|
|
26
|
+
this.running = true;
|
|
27
|
+
this.intervalId = setInterval(() => {
|
|
28
|
+
void this.poll();
|
|
29
|
+
}, this.pollIntervalMs);
|
|
30
|
+
// Don't keep the process alive just for polling
|
|
31
|
+
if (this.intervalId && typeof this.intervalId === 'object' && 'unref' in this.intervalId) {
|
|
32
|
+
this.intervalId.unref();
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
/** Stop polling. */
|
|
36
|
+
stop() {
|
|
37
|
+
if (this.intervalId !== undefined) {
|
|
38
|
+
clearInterval(this.intervalId);
|
|
39
|
+
this.intervalId = undefined;
|
|
40
|
+
}
|
|
41
|
+
this.running = false;
|
|
42
|
+
}
|
|
43
|
+
/** Single poll iteration: check for new models. */
|
|
44
|
+
async poll() {
|
|
45
|
+
try {
|
|
46
|
+
const res = await fetch(`${this.ollamaUrl}/api/tags`);
|
|
47
|
+
if (!res.ok)
|
|
48
|
+
return;
|
|
49
|
+
const data = await res.json();
|
|
50
|
+
const knownNames = getRegisteredModelNames();
|
|
51
|
+
for (const { name } of data.models) {
|
|
52
|
+
if (knownNames.has(name))
|
|
53
|
+
continue;
|
|
54
|
+
// New model found — probe it
|
|
55
|
+
await this.probeAndRegister(name);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
catch {
|
|
59
|
+
// Ollama unreachable — silently skip
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
/** Probe a single model via /api/show and register it. */
|
|
63
|
+
async probeAndRegister(name) {
|
|
64
|
+
try {
|
|
65
|
+
const res = await fetch(`${this.ollamaUrl}/api/show`, {
|
|
66
|
+
method: 'POST',
|
|
67
|
+
headers: { 'Content-Type': 'application/json' },
|
|
68
|
+
body: JSON.stringify({ name }),
|
|
69
|
+
});
|
|
70
|
+
if (!res.ok) {
|
|
71
|
+
registerModel({
|
|
72
|
+
name,
|
|
73
|
+
contextLength: 8192,
|
|
74
|
+
supportsTools: false,
|
|
75
|
+
parameterSize: 'unknown',
|
|
76
|
+
recommended: 'midrange',
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
const data = await res.json();
|
|
81
|
+
const family = data.details?.family?.toLowerCase() ?? '';
|
|
82
|
+
const parameterSize = data.details?.parameter_size ?? 'unknown';
|
|
83
|
+
let contextLength = 8192;
|
|
84
|
+
if (data.model_info) {
|
|
85
|
+
for (const [key, value] of Object.entries(data.model_info)) {
|
|
86
|
+
if (key.endsWith('context_length') && typeof value === 'number') {
|
|
87
|
+
contextLength = value;
|
|
88
|
+
break;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
if (contextLength === 8192 && data.parameters) {
|
|
93
|
+
const match = data.parameters.match(/num_ctx\s+(\d+)/);
|
|
94
|
+
if (match)
|
|
95
|
+
contextLength = parseInt(match[1], 10);
|
|
96
|
+
}
|
|
97
|
+
registerModel({
|
|
98
|
+
name,
|
|
99
|
+
contextLength,
|
|
100
|
+
supportsTools: familySupportsTools(family),
|
|
101
|
+
parameterSize,
|
|
102
|
+
recommended: inferTier(parameterSize),
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
for (const cb of this.callbacks) {
|
|
106
|
+
try {
|
|
107
|
+
cb(name);
|
|
108
|
+
}
|
|
109
|
+
catch { /* callback errors are non-fatal */ }
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
catch {
|
|
113
|
+
// Probe failed — register with conservative defaults
|
|
114
|
+
registerModel({
|
|
115
|
+
name,
|
|
116
|
+
contextLength: 8192,
|
|
117
|
+
supportsTools: false,
|
|
118
|
+
parameterSize: 'unknown',
|
|
119
|
+
recommended: 'midrange',
|
|
120
|
+
});
|
|
121
|
+
for (const cb of this.callbacks) {
|
|
122
|
+
try {
|
|
123
|
+
cb(name);
|
|
124
|
+
}
|
|
125
|
+
catch { /* callback errors are non-fatal */ }
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
//# sourceMappingURL=model-watcher.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-watcher.js","sourceRoot":"","sources":["../../../src/llm/model-watcher.ts"],"names":[],"mappings":"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"}
|
package/dist/src/llm/ollama.d.ts
CHANGED
|
@@ -29,5 +29,10 @@ export declare class OllamaAdapter implements LLMAdapter {
|
|
|
29
29
|
*/
|
|
30
30
|
private resolveToolCalls;
|
|
31
31
|
private parsePromptBasedToolCalls;
|
|
32
|
+
/**
|
|
33
|
+
* Parse multiple JSON objects from a block that may contain one object per line,
|
|
34
|
+
* or a JSON array, or comma-separated objects.
|
|
35
|
+
*/
|
|
36
|
+
private parseMultipleJsonObjects;
|
|
32
37
|
}
|
|
33
38
|
//# sourceMappingURL=ollama.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ollama.d.ts","sourceRoot":"","sources":["../../../src/llm/ollama.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,gBAAgB,EACxD,WAAW,EAAE,WAAW,EAEzB,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"ollama.d.ts","sourceRoot":"","sources":["../../../src/llm/ollama.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,gBAAgB,EACxD,WAAW,EAAE,WAAW,EAEzB,MAAM,kBAAkB,CAAA;AA2FzB,qBAAa,aAAc,YAAW,UAAU;IAC9C,QAAQ,CAAC,IAAI,YAAW;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,WAAW,CAA4B;gBAEnC,OAAO,SAA2B;IAI9C,gDAAgD;IAC1C,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IASrC,6BAA6B;IACvB,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAOrC,6DAA6D;IACvD,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA0BpD,8DAA8D;IACxD,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAS9C,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC;IA0E1E,MAAM,CAAC,QAAQ,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,gBAAgB,GAAG,aAAa,CAAC,WAAW,CAAC;IA6I5F,OAAO,CAAC,eAAe;IAoEvB,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,qBAAqB;IA0B7B;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAoCxB,OAAO,CAAC,yBAAyB;IAmJjC;;;OAGG;IACH,OAAO,CAAC,wBAAwB;CA+CjC"}
|