@zhijiewang/openharness 0.3.2 → 0.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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,QAAiB,EACjB,SAAmC;IAEnC,IAAI,YAAY,GAAG,QAAQ,CAAC;IAC5B,IAAI,KAAK,GAAG,QAAQ,CAAC;IAErB,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YACtC,YAAY,GAAG,CAAE,CAAC;YAClB,KAAK,GAAG,CAAE,CAAC;QACb,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,QAAQ,CAAC;YACjB,YAAY,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAmB;QAC7B,IAAI,EAAE,YAAY;QAClB,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,WAAW,EAAE,UAAU,CAAC;QAC5D,YAAY,EAAE,KAAK;QACnB,GAAG,SAAS;KACb,CAAC;IAEF,MAAM,QAAQ,GAAG,sBAAsB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAC9D,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED,OAAO,EAAE,sBAAsB,EAAE,CAAC;AAElC,SAAS,sBAAsB,CAAC,IAAY,EAAE,MAAsB;IAClE,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,QAAQ;YACX,OAAO,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;QACpC,KAAK,QAAQ;YACX,OAAO,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;QACpC,KAAK,WAAW;YACd,OAAO,IAAI,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACvC,KAAK,YAAY;YACf,OAAO,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAC;QACxC;YACE,6BAA6B;YAC7B,OAAO,IAAI,cAAc,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,eAAe,IAAI,SAAS,EAAE,CAAC,CAAC;IACtG,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAa;IAC3C,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,QAAQ,CAAC;IACrE,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,WAAW,CAAC;IACjD,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC7H,OAAO,QAAQ,CAAC,CAAC,mBAAmB;AACtC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,QAAiB,EACjB,SAAmC;IAEnC,IAAI,YAAY,GAAG,QAAQ,CAAC;IAC5B,IAAI,KAAK,GAAG,QAAQ,CAAC;IAErB,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YACtC,YAAY,GAAG,CAAE,CAAC;YAClB,KAAK,GAAG,CAAE,CAAC;QACb,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,QAAQ,CAAC;YACjB,YAAY,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAmB;QAC7B,IAAI,EAAE,YAAY;QAClB,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,WAAW,EAAE,UAAU,CAAC;QAC5D,YAAY,EAAE,KAAK;QACnB,GAAG,SAAS;KACb,CAAC;IAEF,MAAM,QAAQ,GAAG,sBAAsB,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAC9D,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AAC7B,CAAC;AAED,OAAO,EAAE,sBAAsB,EAAE,CAAC;AAElC,SAAS,sBAAsB,CAAC,IAAY,EAAE,MAAsB;IAClE,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,QAAQ;YACX,OAAO,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;QACpC,KAAK,QAAQ;YACX,OAAO,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;QACpC,KAAK,WAAW;YACd,OAAO,IAAI,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACvC,KAAK,YAAY;YACf,OAAO,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAC;QACxC,KAAK,UAAU,CAAC;QAChB,KAAK,WAAW;YACd,OAAO,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACtC;YACE,6BAA6B;YAC7B,OAAO,IAAI,cAAc,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,eAAe,IAAI,SAAS,EAAE,CAAC,CAAC;IACtG,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAa;IAC3C,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,QAAQ,CAAC;IACrE,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,WAAW,CAAC;IACjD,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC7H,OAAO,QAAQ,CAAC,CAAC,mBAAmB;AACtC,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * LlamaCpp provider — local LLM inference via llama-server OpenAI-compatible REST API.
3
+ */
4
+ import type { Message } from "../types/message.js";
5
+ import type { StreamEvent } from "../types/events.js";
6
+ import type { Provider, APIToolDef, ModelInfo, ProviderConfig } from "./base.js";
7
+ export declare class LlamaCppProvider implements Provider {
8
+ readonly name = "llamacpp";
9
+ private baseUrl;
10
+ private defaultModel;
11
+ constructor(config: ProviderConfig);
12
+ private convertMessages;
13
+ private convertTools;
14
+ stream(messages: Message[], systemPrompt: string, tools?: APIToolDef[], model?: string): AsyncGenerator<StreamEvent, void>;
15
+ complete(messages: Message[], systemPrompt: string, tools?: APIToolDef[], model?: string): Promise<Message>;
16
+ listModels(): ModelInfo[];
17
+ fetchModels(): Promise<ModelInfo[]>;
18
+ healthCheck(): Promise<boolean>;
19
+ }
20
+ //# sourceMappingURL=llamacpp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"llamacpp.d.ts","sourceRoot":"","sources":["../../src/providers/llamacpp.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAY,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAoB,MAAM,oBAAoB,CAAC;AAExE,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEjF,qBAAa,gBAAiB,YAAW,QAAQ;IAC/C,QAAQ,CAAC,IAAI,cAAc;IAC3B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAAS;gBAEjB,MAAM,EAAE,cAAc;IAOlC,OAAO,CAAC,eAAe;IA0CvB,OAAO,CAAC,YAAY;IAYb,MAAM,CACX,QAAQ,EAAE,OAAO,EAAE,EACnB,YAAY,EAAE,MAAM,EACpB,KAAK,CAAC,EAAE,UAAU,EAAE,EACpB,KAAK,CAAC,EAAE,MAAM,GACb,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC;IAgH9B,QAAQ,CACZ,QAAQ,EAAE,OAAO,EAAE,EACnB,YAAY,EAAE,MAAM,EACpB,KAAK,CAAC,EAAE,UAAU,EAAE,EACpB,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,CAAC;IAoCnB,UAAU,IAAI,SAAS,EAAE;IAInB,WAAW,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAoBnC,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;CAQtC"}
@@ -0,0 +1,250 @@
1
+ /**
2
+ * LlamaCpp provider — local LLM inference via llama-server OpenAI-compatible REST API.
3
+ */
4
+ import { createAssistantMessage } from "../types/message.js";
5
+ export class LlamaCppProvider {
6
+ name = "llamacpp";
7
+ baseUrl;
8
+ defaultModel;
9
+ constructor(config) {
10
+ this.baseUrl = (config.baseUrl ?? "http://localhost:8080")
11
+ .replace(/\/$/, "")
12
+ .replace(/\/v1$/, "");
13
+ this.defaultModel = config.defaultModel ?? "";
14
+ }
15
+ convertMessages(messages, systemPrompt) {
16
+ const converted = [];
17
+ if (systemPrompt) {
18
+ converted.push({ role: "system", content: systemPrompt });
19
+ }
20
+ for (const msg of messages) {
21
+ if (msg.role === "system")
22
+ continue;
23
+ if (msg.role === "assistant" && msg.toolCalls?.length) {
24
+ converted.push({
25
+ role: "assistant",
26
+ content: msg.content || "",
27
+ tool_calls: msg.toolCalls.map((tc) => ({
28
+ id: tc.id,
29
+ type: "function",
30
+ function: {
31
+ name: tc.toolName,
32
+ arguments: JSON.stringify(tc.arguments),
33
+ },
34
+ })),
35
+ });
36
+ }
37
+ else if (msg.role === "tool" && msg.toolResults?.length) {
38
+ for (const tr of msg.toolResults) {
39
+ converted.push({
40
+ role: "tool",
41
+ content: tr.output,
42
+ tool_call_id: tr.callId,
43
+ });
44
+ }
45
+ }
46
+ else {
47
+ converted.push({
48
+ role: msg.role === "user" ? "user" : msg.role === "assistant" ? "assistant" : msg.role,
49
+ content: msg.content,
50
+ });
51
+ }
52
+ }
53
+ return converted;
54
+ }
55
+ convertTools(tools) {
56
+ if (!tools?.length)
57
+ return undefined;
58
+ return tools.map((t) => ({
59
+ type: "function",
60
+ function: {
61
+ name: t.function.name,
62
+ description: t.function.description,
63
+ parameters: t.function.parameters,
64
+ },
65
+ }));
66
+ }
67
+ async *stream(messages, systemPrompt, tools, model) {
68
+ const m = model ?? this.defaultModel;
69
+ const body = {
70
+ model: m,
71
+ messages: this.convertMessages(messages, systemPrompt),
72
+ stream: true,
73
+ };
74
+ const convertedTools = this.convertTools(tools);
75
+ if (convertedTools)
76
+ body.tools = convertedTools;
77
+ let res;
78
+ try {
79
+ res = await fetch(`${this.baseUrl}/v1/chat/completions`, {
80
+ method: "POST",
81
+ headers: { "Content-Type": "application/json" },
82
+ body: JSON.stringify(body),
83
+ });
84
+ }
85
+ catch (err) {
86
+ yield { type: "error", message: `LlamaCpp request failed: ${err}` };
87
+ return;
88
+ }
89
+ if (!res.ok) {
90
+ yield { type: "error", message: `LlamaCpp HTTP ${res.status}: ${await res.text()}` };
91
+ return;
92
+ }
93
+ const reader = res.body?.getReader();
94
+ if (!reader) {
95
+ yield { type: "error", message: "LlamaCpp: response body is not readable" };
96
+ return;
97
+ }
98
+ const decoder = new TextDecoder();
99
+ let buffer = "";
100
+ // Track tool call argument deltas by index
101
+ const toolCallAccumulators = new Map();
102
+ while (true) {
103
+ const { done, value } = await reader.read();
104
+ if (done)
105
+ break;
106
+ buffer += decoder.decode(value, { stream: true });
107
+ const lines = buffer.split("\n");
108
+ buffer = lines.pop() ?? "";
109
+ for (const line of lines) {
110
+ const trimmed = line.trim();
111
+ if (!trimmed.startsWith("data:"))
112
+ continue;
113
+ const payload = trimmed.slice(5).trim();
114
+ if (payload === "[DONE]")
115
+ continue;
116
+ let chunk;
117
+ try {
118
+ chunk = JSON.parse(payload);
119
+ }
120
+ catch {
121
+ continue;
122
+ }
123
+ // Usage info
124
+ if (chunk.usage) {
125
+ const inputTokens = chunk.usage.prompt_tokens ?? 0;
126
+ const outputTokens = chunk.usage.completion_tokens ?? 0;
127
+ yield { type: "cost_update", inputTokens, outputTokens, cost: 0, model: m };
128
+ }
129
+ const delta = chunk.choices?.[0]?.delta;
130
+ if (!delta)
131
+ continue;
132
+ if (delta.content) {
133
+ yield { type: "text_delta", content: delta.content };
134
+ }
135
+ if (delta.tool_calls) {
136
+ for (const tc of delta.tool_calls) {
137
+ const idx = tc.index ?? 0;
138
+ if (tc.id) {
139
+ // New tool call starting
140
+ toolCallAccumulators.set(idx, {
141
+ id: tc.id,
142
+ name: tc.function?.name ?? "",
143
+ args: tc.function?.arguments ?? "",
144
+ });
145
+ yield {
146
+ type: "tool_call_start",
147
+ toolName: tc.function?.name ?? "unknown",
148
+ callId: tc.id,
149
+ };
150
+ }
151
+ else {
152
+ // Continuation delta
153
+ const acc = toolCallAccumulators.get(idx);
154
+ if (acc) {
155
+ if (tc.function?.name)
156
+ acc.name += tc.function.name;
157
+ if (tc.function?.arguments)
158
+ acc.args += tc.function.arguments;
159
+ }
160
+ }
161
+ }
162
+ }
163
+ }
164
+ }
165
+ // Emit tool_call_complete for each accumulated tool call
166
+ for (const [, acc] of toolCallAccumulators) {
167
+ yield {
168
+ type: "tool_call_complete",
169
+ callId: acc.id,
170
+ toolName: acc.name,
171
+ arguments: safeParse(acc.args),
172
+ };
173
+ }
174
+ }
175
+ async complete(messages, systemPrompt, tools, model) {
176
+ const m = model ?? this.defaultModel;
177
+ const body = {
178
+ model: m,
179
+ messages: this.convertMessages(messages, systemPrompt),
180
+ stream: false,
181
+ };
182
+ const convertedTools = this.convertTools(tools);
183
+ if (convertedTools)
184
+ body.tools = convertedTools;
185
+ const res = await fetch(`${this.baseUrl}/v1/chat/completions`, {
186
+ method: "POST",
187
+ headers: { "Content-Type": "application/json" },
188
+ body: JSON.stringify(body),
189
+ });
190
+ if (!res.ok) {
191
+ throw new Error(`LlamaCpp HTTP ${res.status}: ${await res.text()}`);
192
+ }
193
+ const data = await res.json();
194
+ const choice = data.choices?.[0]?.message;
195
+ const content = choice?.content ?? "";
196
+ let toolCalls;
197
+ if (choice?.tool_calls?.length) {
198
+ toolCalls = choice.tool_calls.map((tc) => ({
199
+ id: tc.id ?? crypto.randomUUID(),
200
+ toolName: tc.function?.name ?? "unknown",
201
+ arguments: safeParse(tc.function?.arguments),
202
+ }));
203
+ }
204
+ return createAssistantMessage(content, toolCalls);
205
+ }
206
+ listModels() {
207
+ return [];
208
+ }
209
+ async fetchModels() {
210
+ try {
211
+ const res = await fetch(`${this.baseUrl}/v1/models`);
212
+ if (!res.ok)
213
+ return [];
214
+ const data = await res.json();
215
+ return (data.data ?? []).map((m) => ({
216
+ id: m.id,
217
+ provider: "llamacpp",
218
+ contextWindow: 128_000,
219
+ supportsTools: true,
220
+ supportsStreaming: true,
221
+ supportsVision: false,
222
+ inputCostPerMtok: 0,
223
+ outputCostPerMtok: 0,
224
+ }));
225
+ }
226
+ catch {
227
+ return [];
228
+ }
229
+ }
230
+ async healthCheck() {
231
+ try {
232
+ const res = await fetch(`${this.baseUrl}/v1/models`);
233
+ return res.ok;
234
+ }
235
+ catch {
236
+ return false;
237
+ }
238
+ }
239
+ }
240
+ function safeParse(json) {
241
+ if (!json)
242
+ return {};
243
+ try {
244
+ return JSON.parse(json);
245
+ }
246
+ catch {
247
+ return {};
248
+ }
249
+ }
250
+ //# sourceMappingURL=llamacpp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"llamacpp.js","sourceRoot":"","sources":["../../src/providers/llamacpp.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ollama.d.ts","sourceRoot":"","sources":["../../src/providers/ollama.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAY,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAoB,MAAM,oBAAoB,CAAC;AAExE,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEjF,qBAAa,cAAe,YAAW,QAAQ;IAC7C,QAAQ,CAAC,IAAI,YAAY;IACzB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAAS;gBAEjB,MAAM,EAAE,cAAc;IAKlC,OAAO,CAAC,eAAe;IA0CvB,OAAO,CAAC,YAAY;IAYb,MAAM,CACX,QAAQ,EAAE,OAAO,EAAE,EACnB,YAAY,EAAE,MAAM,EACpB,KAAK,CAAC,EAAE,UAAU,EAAE,EACpB,KAAK,CAAC,EAAE,MAAM,GACb,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC;IAkG9B,QAAQ,CACZ,QAAQ,EAAE,OAAO,EAAE,EACnB,YAAY,EAAE,MAAM,EACpB,KAAK,CAAC,EAAE,UAAU,EAAE,EACpB,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,CAAC;IAuCnB,UAAU,IAAI,SAAS,EAAE;IAInB,WAAW,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAoBnC,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;CAQtC"}
1
+ {"version":3,"file":"ollama.d.ts","sourceRoot":"","sources":["../../src/providers/ollama.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAY,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAoB,MAAM,oBAAoB,CAAC;AAExE,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEjF,qBAAa,cAAe,YAAW,QAAQ;IAC7C,QAAQ,CAAC,IAAI,YAAY;IACzB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAAS;gBAEjB,MAAM,EAAE,cAAc;IAKlC,OAAO,CAAC,eAAe;IA0CvB,OAAO,CAAC,YAAY;IAYb,MAAM,CACX,QAAQ,EAAE,OAAO,EAAE,EACnB,YAAY,EAAE,MAAM,EACpB,KAAK,CAAC,EAAE,UAAU,EAAE,EACpB,KAAK,CAAC,EAAE,MAAM,GACb,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC;IAkG9B,QAAQ,CACZ,QAAQ,EAAE,OAAO,EAAE,EACnB,YAAY,EAAE,MAAM,EACpB,KAAK,CAAC,EAAE,UAAU,EAAE,EACpB,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,CAAC;IAuCnB,UAAU,IAAI,SAAS,EAAE;IAInB,WAAW,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IA+BnC,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;CAQtC"}
@@ -195,16 +195,26 @@ export class OllamaProvider {
195
195
  if (!res.ok)
196
196
  return [];
197
197
  const data = await res.json();
198
- return (data.models ?? []).map((m) => ({
199
- id: m.name,
200
- provider: "ollama",
201
- contextWindow: 128_000,
202
- supportsTools: true,
203
- supportsStreaming: true,
204
- supportsVision: false,
205
- inputCostPerMtok: 0,
206
- outputCostPerMtok: 0,
207
- }));
198
+ return (data.models ?? []).map((m) => {
199
+ // Detect vision support from model families
200
+ // Presence of "clip" or "llava" in families indicates vision capability
201
+ const families = m.details?.families ?? [];
202
+ const supportsVision = Array.isArray(families) &&
203
+ families.some((f) => f.includes("clip") || f.includes("llava"));
204
+ return {
205
+ id: m.name,
206
+ provider: "ollama",
207
+ // Default context window: Ollama's /api/tags doesn't expose context_window,
208
+ // so 128K is a reasonable default for modern LLMs
209
+ contextWindow: 128_000,
210
+ // Safe default: modern models typically support tools
211
+ supportsTools: true,
212
+ supportsStreaming: true,
213
+ supportsVision,
214
+ inputCostPerMtok: 0,
215
+ outputCostPerMtok: 0,
216
+ };
217
+ });
208
218
  }
209
219
  catch {
210
220
  return [];
@@ -1 +1 @@
1
- {"version":3,"file":"ollama.js","sourceRoot":"","sources":["../../src/providers/ollama.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ollama.js","sourceRoot":"","sources":["../../src/providers/ollama.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zhijiewang/openharness",
3
- "version": "0.3.2",
3
+ "version": "0.4.0",
4
4
  "description": "Open-source terminal coding agent. Works with any LLM.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -18,7 +18,7 @@
18
18
  "build": "tsc",
19
19
  "prepare": "tsc",
20
20
  "prepublishOnly": "npm run build",
21
- "test": "tsx --test src/**/*.test.ts",
21
+ "test": "node scripts/test.mjs",
22
22
  "typecheck": "tsc --noEmit",
23
23
  "start": "node dist/main.js"
24
24
  },