@tyvm/knowhow 0.0.84 → 0.0.86

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 (72) hide show
  1. package/package.json +1 -1
  2. package/src/agents/base/base.ts +99 -37
  3. package/src/agents/researcher/researcher.ts +1 -2
  4. package/src/agents/tools/aiClient.ts +48 -0
  5. package/src/agents/tools/list.ts +57 -0
  6. package/src/chat/CliChatService.ts +3 -1
  7. package/src/chat/modules/AgentModule.ts +20 -31
  8. package/src/chat/types.ts +1 -0
  9. package/src/cli.ts +19 -10
  10. package/src/clients/anthropic.ts +11 -0
  11. package/src/clients/contextLimits.ts +106 -0
  12. package/src/clients/gemini.ts +11 -0
  13. package/src/clients/index.ts +112 -0
  14. package/src/clients/openai.ts +11 -0
  15. package/src/clients/pricing/anthropic.ts +0 -4
  16. package/src/clients/pricing/google.ts +81 -2
  17. package/src/clients/pricing/openai.ts +68 -0
  18. package/src/clients/types.ts +8 -0
  19. package/src/clients/xai.ts +11 -0
  20. package/src/types.ts +79 -7
  21. package/tests/clients/pricing.test.ts +144 -0
  22. package/ts_build/package.json +1 -1
  23. package/ts_build/src/agents/base/base.d.ts +4 -0
  24. package/ts_build/src/agents/base/base.js +53 -28
  25. package/ts_build/src/agents/base/base.js.map +1 -1
  26. package/ts_build/src/agents/researcher/researcher.js +1 -1
  27. package/ts_build/src/agents/researcher/researcher.js.map +1 -1
  28. package/ts_build/src/agents/tools/aiClient.d.ts +3 -0
  29. package/ts_build/src/agents/tools/aiClient.js +31 -1
  30. package/ts_build/src/agents/tools/aiClient.js.map +1 -1
  31. package/ts_build/src/agents/tools/list.js +48 -0
  32. package/ts_build/src/agents/tools/list.js.map +1 -1
  33. package/ts_build/src/chat/CliChatService.js.map +1 -1
  34. package/ts_build/src/chat/modules/AgentModule.d.ts +1 -4
  35. package/ts_build/src/chat/modules/AgentModule.js +12 -15
  36. package/ts_build/src/chat/modules/AgentModule.js.map +1 -1
  37. package/ts_build/src/chat/types.d.ts +1 -0
  38. package/ts_build/src/cli.js +3 -2
  39. package/ts_build/src/cli.js.map +1 -1
  40. package/ts_build/src/clients/anthropic.d.ts +8 -4
  41. package/ts_build/src/clients/anthropic.js +9 -0
  42. package/ts_build/src/clients/anthropic.js.map +1 -1
  43. package/ts_build/src/clients/contextLimits.d.ts +3 -0
  44. package/ts_build/src/clients/contextLimits.js +88 -0
  45. package/ts_build/src/clients/contextLimits.js.map +1 -0
  46. package/ts_build/src/clients/gemini.d.ts +14 -10
  47. package/ts_build/src/clients/gemini.js +9 -0
  48. package/ts_build/src/clients/gemini.js.map +1 -1
  49. package/ts_build/src/clients/index.d.ts +15 -0
  50. package/ts_build/src/clients/index.js +70 -0
  51. package/ts_build/src/clients/index.js.map +1 -1
  52. package/ts_build/src/clients/openai.d.ts +4 -0
  53. package/ts_build/src/clients/openai.js +9 -0
  54. package/ts_build/src/clients/openai.js.map +1 -1
  55. package/ts_build/src/clients/pricing/anthropic.d.ts +4 -4
  56. package/ts_build/src/clients/pricing/anthropic.js +0 -4
  57. package/ts_build/src/clients/pricing/anthropic.js.map +1 -1
  58. package/ts_build/src/clients/pricing/google.d.ts +10 -10
  59. package/ts_build/src/clients/pricing/google.js +74 -2
  60. package/ts_build/src/clients/pricing/google.js.map +1 -1
  61. package/ts_build/src/clients/pricing/openai.js +65 -0
  62. package/ts_build/src/clients/pricing/openai.js.map +1 -1
  63. package/ts_build/src/clients/types.d.ts +4 -0
  64. package/ts_build/src/clients/xai.d.ts +4 -0
  65. package/ts_build/src/clients/xai.js +9 -0
  66. package/ts_build/src/clients/xai.js.map +1 -1
  67. package/ts_build/src/types.d.ts +33 -4
  68. package/ts_build/src/types.js +73 -5
  69. package/ts_build/src/types.js.map +1 -1
  70. package/ts_build/tests/clients/pricing.test.d.ts +1 -0
  71. package/ts_build/tests/clients/pricing.test.js +90 -0
  72. package/ts_build/tests/clients/pricing.test.js.map +1 -0
package/src/types.ts CHANGED
@@ -179,8 +179,7 @@ export type Language = {
179
179
  export type ChatInteraction = {
180
180
  input: string;
181
181
  output: string;
182
- summaries: string[];
183
- lastThread: string[];
182
+ taskId: string;
184
183
  };
185
184
 
186
185
  export const Models = {
@@ -216,6 +215,12 @@ export const Models = {
216
215
  openai: {
217
216
  GPT_5_2: "gpt-5.2",
218
217
  GPT_5_1: "gpt-5.1",
218
+ GPT_54: "gpt-5.4",
219
+ GPT_54_Mini: "gpt-5.4-mini",
220
+ GPT_54_Nano: "gpt-5.4-nano",
221
+ GPT_54_Pro: "gpt-5.4-pro",
222
+ GPT_53_Chat: "gpt-5.3-chat-latest",
223
+ GPT_53_Codex: "gpt-5.3-codex",
219
224
  GPT_5: "gpt-5",
220
225
  GPT_5_Mini: "gpt-5-mini",
221
226
  GPT_5_Nano: "gpt-5-nano",
@@ -239,6 +244,12 @@ export const Models = {
239
244
  GPT_4o_Mini_Search: "gpt-4o-mini-search-preview-2025-03-11",
240
245
  GPT_4o_Search: "gpt-4o-search-preview-2025-03-11",
241
246
 
247
+ GPT_4o_Transcribe: "gpt-4o-transcribe",
248
+ GPT_4o_Mini_Transcribe: "gpt-4o-mini-transcribe",
249
+ GPT_Realtime_15: "gpt-realtime-1.5",
250
+ GPT_Realtime_Mini: "gpt-realtime-mini",
251
+ GPT_Image_15: "gpt-image-1.5",
252
+ GPT_Image_1_Mini: "gpt-image-1-mini",
242
253
  TTS_1: "tts-1",
243
254
  Whisper_1: "whisper-1",
244
255
  DALL_E_3: "dall-e-3",
@@ -250,19 +261,41 @@ export const Models = {
250
261
  // Codex_Mini: "codex-mini-latest",
251
262
  },
252
263
  google: {
253
- Gemini_3_Preview: "gemini-3-pro-preview",
264
+ // Gemini 3.x
265
+ Gemini_31_Pro_Preview: "gemini-3.1-pro-preview",
266
+ Gemini_31_Flash_Image_Preview: "gemini-3.1-flash-image-preview",
267
+ Gemini_31_Flash_Lite_Preview: "gemini-3.1-flash-lite-preview",
268
+ Gemini_3_Flash_Preview: "gemini-3-flash-preview",
269
+ Gemini_3_Pro_Image_Preview: "gemini-3-pro-image-preview",
270
+ // Gemini 2.5
271
+ Gemini_25_Pro: "gemini-2.5-pro",
272
+ Gemini_25_Flash: "gemini-2.5-flash",
273
+ Gemini_25_Flash_Lite: "gemini-2.5-flash-lite",
254
274
  Gemini_25_Flash_Preview: "gemini-2.5-flash-preview-05-20",
255
275
  Gemini_25_Pro_Preview: "gemini-2.5-pro-preview-05-06",
276
+ Gemini_25_Flash_Image: "gemini-2.5-flash-image",
277
+ Gemini_25_Flash_Live: "gemini-2.5-flash-live-preview",
278
+ Gemini_25_Flash_Native_Audio: "gemini-2.5-flash-native-audio-preview-12-2025",
279
+ Gemini_25_Pro_TTS: "gemini-2.5-pro-preview-tts",
280
+ // Gemini 2.0 (deprecated)
256
281
  Gemini_20_Flash: "gemini-2.0-flash",
257
282
  Gemini_20_Flash_Preview_Image_Generation:
258
283
  "gemini-2.0-flash-exp-image-generation",
259
284
  Gemini_20_Flash_Lite: "gemini-2.0-flash-lite",
285
+ // Gemini 1.5 (legacy)
260
286
  Gemini_15_Flash: "gemini-1.5-flash",
261
287
  Gemini_15_Flash_8B: "gemini-1.5-flash-8b",
262
288
  Gemini_15_Pro: "gemini-1.5-pro",
289
+ // Media generation
263
290
  Imagen_3: "imagen-4.0-generate-001",
291
+ Imagen_4_Fast: "imagen-4.0-fast-generate-001",
292
+ Imagen_4_Ultra: "imagen-4.0-ultra-generate-001",
264
293
  Veo_2: "veo-2.0-generate-001",
294
+ Veo_3: "veo-3.0-generate-001",
295
+ Veo_3_Fast: "veo-3.0-fast-generate-001",
265
296
  Veo_3_1: "veo-3.1-generate-preview",
297
+ Veo_3_1_Fast: "veo-3.1-fast-generate-preview",
298
+ // Audio / Live
266
299
  Gemini_20_Flash_Live: "gemini-2.0-flash-live-001",
267
300
  Gemini_25_Flash_TTS: "gemini-2.5-flash-preview-tts",
268
301
  Gemini_20_Flash_TTS: "gemini-2.0-flash-preview-tts",
@@ -277,6 +310,7 @@ export const EmbeddingModels = {
277
310
  },
278
311
  google: {
279
312
  Gemini_Embedding: "gemini-embedding-exp",
313
+ Gemini_Embedding_001: "gemini-embedding-001",
280
314
  },
281
315
  };
282
316
 
@@ -306,6 +340,12 @@ export const OpenAiReasoningModels = [
306
340
  Models.openai.o3,
307
341
  Models.openai.o3_Pro,
308
342
  Models.openai.o4_Mini,
343
+ Models.openai.GPT_54,
344
+ Models.openai.GPT_54_Mini,
345
+ Models.openai.GPT_54_Nano,
346
+ Models.openai.GPT_54_Pro,
347
+ Models.openai.GPT_53_Chat,
348
+ Models.openai.GPT_53_Codex,
309
349
  Models.openai.GPT_5,
310
350
  Models.openai.GPT_5_Mini,
311
351
  Models.openai.GPT_5_Nano,
@@ -321,6 +361,12 @@ export const OpenAiEmbeddingModels = [
321
361
  // export const OpenAiResponseOnlyModels = [Models.openai.Codex_Mini];
322
362
 
323
363
  export const GoogleReasoningModels = [
364
+ Models.google.Gemini_31_Pro_Preview,
365
+ Models.google.Gemini_31_Flash_Lite_Preview,
366
+ Models.google.Gemini_3_Flash_Preview,
367
+ Models.google.Gemini_25_Pro,
368
+ Models.google.Gemini_25_Flash,
369
+ Models.google.Gemini_25_Flash_Lite,
324
370
  Models.google.Gemini_25_Flash_Preview,
325
371
  Models.google.Gemini_25_Pro_Preview,
326
372
  Models.google.Gemini_20_Flash,
@@ -331,13 +377,20 @@ export const GoogleReasoningModels = [
331
377
  ];
332
378
 
333
379
  export const GoogleImageModels = [
380
+ Models.google.Gemini_31_Flash_Image_Preview,
381
+ Models.google.Gemini_3_Pro_Image_Preview,
382
+ Models.google.Gemini_25_Flash_Image,
334
383
  Models.google.Gemini_20_Flash_Preview_Image_Generation,
335
384
  Models.google.Imagen_3,
385
+ Models.google.Imagen_4_Fast,
386
+ Models.google.Imagen_4_Ultra,
336
387
  ];
337
388
 
338
389
  export const OpenAiImageModels = [
339
390
  Models.openai.DALL_E_3,
340
391
  Models.openai.DALL_E_2,
392
+ Models.openai.GPT_Image_15,
393
+ Models.openai.GPT_Image_1_Mini,
341
394
  ];
342
395
 
343
396
  export const OpenAiVideoModels = [
@@ -348,17 +401,36 @@ export const OpenAiVideoModels = [
348
401
 
349
402
  export const OpenAiTTSModels = [Models.openai.TTS_1];
350
403
 
351
- export const OpenAiTranscriptionModels = [Models.openai.Whisper_1];
352
-
353
404
  export const XaiImageModels = [Models.xai.GrokImagineImage];
405
+ export const OpenAiTranscriptionModels = [
406
+ Models.openai.Whisper_1,
407
+ Models.openai.GPT_4o_Transcribe,
408
+ Models.openai.GPT_4o_Mini_Transcribe,
409
+ ];
354
410
 
411
+ export const OpenAiRealtimeModels = [
412
+ Models.openai.GPT_4o_Realtime,
413
+ Models.openai.GPT_4o_Mini_Realtime,
414
+ Models.openai.GPT_Realtime_15,
415
+ Models.openai.GPT_Realtime_Mini,
416
+ ];
355
417
  export const XaiVideoModels = [Models.xai.GrokImagineVideo];
356
418
 
357
419
  export const GoogleTTSModels = [
358
420
  Models.google.Gemini_25_Flash_TTS,
421
+ Models.google.Gemini_25_Pro_TTS,
359
422
  Models.google.Gemini_20_Flash_TTS,
360
423
  ];
361
424
 
362
- export const GoogleVideoModels = [Models.google.Veo_2, Models.google.Veo_3_1];
425
+ export const GoogleVideoModels = [
426
+ Models.google.Veo_2,
427
+ Models.google.Veo_3,
428
+ Models.google.Veo_3_Fast,
429
+ Models.google.Veo_3_1,
430
+ Models.google.Veo_3_1_Fast,
431
+ ];
363
432
 
364
- export const GoogleEmbeddingModels = [EmbeddingModels.google.Gemini_Embedding];
433
+ export const GoogleEmbeddingModels = [
434
+ EmbeddingModels.google.Gemini_Embedding,
435
+ EmbeddingModels.google.Gemini_Embedding_001,
436
+ ];
@@ -0,0 +1,144 @@
1
+ /**
2
+ * Test that verifies every model supported by the Clients has a corresponding
3
+ * pricing entry. This ensures we never release model support without knowing the price.
4
+ *
5
+ * Models that are image-only, video-only, TTS, transcription, realtime, or live streaming
6
+ * are exempt from text pricing requirements — they should have their own pricing entries
7
+ * in the appropriate pricing tables (image, video, audio, etc.).
8
+ */
9
+
10
+ import {
11
+ Models,
12
+ EmbeddingModels,
13
+ GoogleImageModels,
14
+ GoogleVideoModels,
15
+ GoogleTTSModels,
16
+ OpenAiImageModels,
17
+ OpenAiVideoModels,
18
+ OpenAiTTSModels,
19
+ OpenAiTranscriptionModels,
20
+ OpenAiRealtimeModels,
21
+ XaiImageModels,
22
+ XaiVideoModels,
23
+ } from "../../src/types";
24
+
25
+ import {
26
+ OpenAiTextPricing,
27
+ GeminiTextPricing,
28
+ AnthropicTextPricing,
29
+ XaiTextPricing,
30
+ XaiImagePricing,
31
+ XaiVideoPricing,
32
+ } from "../../src/clients/pricing";
33
+
34
+ describe("Model Pricing Coverage", () => {
35
+ /**
36
+ * Models that are exclusively non-text modalities (image, video, TTS, transcription,
37
+ * realtime/live audio) and therefore do NOT need a text token pricing entry.
38
+ * They still must appear in their own modality-specific pricing table (see separate tests below).
39
+ */
40
+ const nonTextModels = new Set<string>([
41
+ ...GoogleImageModels,
42
+ ...GoogleVideoModels,
43
+ ...GoogleTTSModels,
44
+ ...OpenAiImageModels,
45
+ ...OpenAiVideoModels,
46
+ ...OpenAiTTSModels,
47
+ ...OpenAiTranscriptionModels,
48
+ ...OpenAiRealtimeModels,
49
+ ...XaiImageModels,
50
+ ...XaiVideoModels,
51
+ // Live streaming model — not a standard text completion model
52
+ Models.google.Gemini_20_Flash_Live,
53
+ ]);
54
+
55
+ const allTextPricing: Record<string, unknown> = {
56
+ ...OpenAiTextPricing,
57
+ ...GeminiTextPricing,
58
+ ...AnthropicTextPricing,
59
+ ...XaiTextPricing,
60
+ };
61
+
62
+ describe("Text completion models have pricing", () => {
63
+ for (const [provider, providerModels] of Object.entries(Models)) {
64
+ for (const [modelKey, modelId] of Object.entries(
65
+ providerModels as Record<string, string>
66
+ )) {
67
+ if (nonTextModels.has(modelId)) {
68
+ // Skip — covered by modality-specific tests below
69
+ continue;
70
+ }
71
+
72
+ it(`${provider}.${modelKey} (${modelId}) has text pricing`, () => {
73
+ const entry = allTextPricing[modelId];
74
+ expect(entry).toBeDefined();
75
+ expect(entry).toEqual(
76
+ expect.objectContaining({ input: expect.any(Number) })
77
+ );
78
+ });
79
+ }
80
+ }
81
+ });
82
+
83
+ describe("Embedding models have pricing", () => {
84
+ const allEmbeddingPricing: Record<string, unknown> = {
85
+ ...OpenAiTextPricing, // OpenAI embeddings are in the text pricing table
86
+ ...GeminiTextPricing, // Google embeddings are in the Gemini pricing table
87
+ };
88
+
89
+ for (const [provider, providerModels] of Object.entries(EmbeddingModels)) {
90
+ for (const [modelKey, modelId] of Object.entries(
91
+ providerModels as Record<string, string>
92
+ )) {
93
+ it(`EmbeddingModels.${provider}.${modelKey} (${modelId}) has pricing`, () => {
94
+ const entry = allEmbeddingPricing[modelId];
95
+ expect(entry).toBeDefined();
96
+ });
97
+ }
98
+ }
99
+ });
100
+
101
+ describe("XAI image models have image pricing", () => {
102
+ const xaiImagePricing = XaiImagePricing as Record<string, unknown>;
103
+
104
+ for (const modelId of XaiImageModels) {
105
+ it(`XAI image model (${modelId}) has image pricing`, () => {
106
+ const entry = xaiImagePricing[modelId];
107
+ expect(entry).toBeDefined();
108
+ });
109
+ }
110
+ });
111
+
112
+ describe("XAI video models have video pricing", () => {
113
+ const xaiVideoPricing = XaiVideoPricing as Record<string, unknown>;
114
+
115
+ for (const modelId of XaiVideoModels) {
116
+ it(`XAI video model (${modelId}) has video pricing`, () => {
117
+ const entry = xaiVideoPricing[modelId];
118
+ expect(entry).toBeDefined();
119
+ });
120
+ }
121
+ });
122
+
123
+ describe("Google image models have pricing", () => {
124
+ const geminiPricing = GeminiTextPricing as Record<string, unknown>;
125
+
126
+ for (const modelId of GoogleImageModels) {
127
+ it(`Google image model (${modelId}) has pricing in GeminiTextPricing`, () => {
128
+ const entry = geminiPricing[modelId];
129
+ expect(entry).toBeDefined();
130
+ });
131
+ }
132
+ });
133
+
134
+ describe("Google video models have pricing", () => {
135
+ const geminiPricing = GeminiTextPricing as Record<string, unknown>;
136
+
137
+ for (const modelId of GoogleVideoModels) {
138
+ it(`Google video model (${modelId}) has pricing in GeminiTextPricing`, () => {
139
+ const entry = geminiPricing[modelId];
140
+ expect(entry).toBeDefined();
141
+ });
142
+ }
143
+ });
144
+ });
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tyvm/knowhow",
3
- "version": "0.0.84",
3
+ "version": "0.0.86",
4
4
  "description": "ai cli with plugins and agents",
5
5
  "main": "ts_build/src/index.js",
6
6
  "bin": {
@@ -38,6 +38,8 @@ export declare abstract class BaseAgent implements IAgent {
38
38
  protected turnCount: number;
39
39
  protected totalCostUsd: number;
40
40
  protected currentThread: number;
41
+ protected compressThreshold: number;
42
+ protected compressMinMessages: number;
41
43
  protected threads: Message[][];
42
44
  protected pendingUserMessages: Message[];
43
45
  protected taskBreakdown: string;
@@ -71,6 +73,8 @@ export declare abstract class BaseAgent implements IAgent {
71
73
  disabledTools: any[];
72
74
  constructor(context: AgentContext);
73
75
  protected log(message: string, level?: "info" | "warn" | "error"): void;
76
+ setCompressThreshold(threshold: number): void;
77
+ getCompressThreshold(): number;
74
78
  setMaxTurns(maxTurns: number | null): void;
75
79
  setMaxSpend(maxSpend: number | null): void;
76
80
  setMaxRunTime(maxRunTimeMs: number | null): void;
@@ -6,6 +6,7 @@ const EventService_1 = require("../../services/EventService");
6
6
  const clients_1 = require("../../clients");
7
7
  const ai_1 = require("../../ai");
8
8
  const MessageProcessor_1 = require("../../services/MessageProcessor");
9
+ const contextLimits_1 = require("../../clients/contextLimits");
9
10
  class BaseAgent {
10
11
  status = "not_started";
11
12
  lastHealthCheckTime = 0;
@@ -23,6 +24,8 @@ class BaseAgent {
23
24
  turnCount = 0;
24
25
  totalCostUsd = 0;
25
26
  currentThread = 0;
27
+ compressThreshold = 30000;
28
+ compressMinMessages = 30;
26
29
  threads = [];
27
30
  pendingUserMessages = [];
28
31
  taskBreakdown = "";
@@ -65,7 +68,10 @@ class BaseAgent {
65
68
  if (!this.events) {
66
69
  throw new Error("EventService is required for BaseAgent");
67
70
  }
68
- this.events.setListener({ key: `agent:msg:${this.constructor.name}`, event: this.eventTypes.agentMsg }, (eventData) => {
71
+ this.events.setListener({
72
+ key: `agent:msg:${this.constructor.name}`,
73
+ event: this.eventTypes.agentMsg,
74
+ }, (eventData) => {
69
75
  if (this.status === this.eventTypes.inProgress ||
70
76
  this.status === this.eventTypes.pause) {
71
77
  const message = {
@@ -85,6 +91,18 @@ class BaseAgent {
85
91
  taskId: this.currentTaskId,
86
92
  });
87
93
  }
94
+ setCompressThreshold(threshold) {
95
+ this.compressThreshold = threshold;
96
+ }
97
+ getCompressThreshold() {
98
+ if (this.compressThreshold !== contextLimits_1.DEFAULT_CONTEXT_LIMIT) {
99
+ return this.compressThreshold;
100
+ }
101
+ const result = this.clientService.getContextLimit(this.getProvider(), this.getModel());
102
+ const contextLimit = result?.contextLimit ?? contextLimits_1.DEFAULT_CONTEXT_LIMIT;
103
+ const threshold = result?.threshold ?? contextLimit;
104
+ return Math.floor(threshold * 0.85);
105
+ }
88
106
  setMaxTurns(maxTurns) {
89
107
  this.maxTurns = maxTurns;
90
108
  }
@@ -389,7 +407,6 @@ class BaseAgent {
389
407
  const startIndex = 0;
390
408
  const endIndex = messages.length;
391
409
  messages = await this.messageProcessor.processMessages(messages, "pre_call");
392
- const compressThreshold = 30000;
393
410
  const response = await this.getClient().createChatCompletion({
394
411
  model,
395
412
  messages,
@@ -404,6 +421,7 @@ class BaseAgent {
404
421
  }
405
422
  }
406
423
  this.adjustTotalCostUsd(response?.usd_cost);
424
+ this.log("agent response cost: " + response?.usd_cost);
407
425
  for (const choice of response.choices) {
408
426
  messages.push(choice.message);
409
427
  messages = await this.messageProcessor.processMessages(messages, "post_call");
@@ -460,10 +478,10 @@ class BaseAgent {
460
478
  this.agentEvents.emit(this.eventTypes.done, firstMessage.content);
461
479
  return firstMessage.content;
462
480
  }
463
- if (this.getMessagesLength(messages) > compressThreshold &&
464
- messages.length > 30) {
481
+ if (this.getMessagesLength(messages) > this.getCompressThreshold() &&
482
+ messages.length > this.compressMinMessages) {
465
483
  const taskBreakdown = await this.getTaskBreakdown(messages);
466
- this.log(`Compressing messages: ${this.getMessagesLength(messages)} exceeds ${compressThreshold}`);
484
+ this.log(`Compressing messages: ${this.getMessagesLength(messages)} exceeds ${this.getCompressThreshold()}`);
467
485
  messages = await this.compressMessages(messages, startIndex, endIndex);
468
486
  this.startNewThread(messages);
469
487
  }
@@ -486,23 +504,23 @@ class BaseAgent {
486
504
  if (e.toString().includes("429")) {
487
505
  this.setNotHealthy();
488
506
  return this.call(userInput, _messages, retryCount);
489
- const errorStr = e.toString();
490
- const isNonRetriable = errorStr.includes("401") ||
491
- errorStr.includes("403") ||
492
- errorStr.includes("404");
493
- const isRetriable = !isNonRetriable &&
494
- (errorStr.match(/5\d\d/) ||
495
- errorStr.includes("Failed to get models") ||
496
- errorStr.includes("timeout") ||
497
- errorStr.includes("ECONNRESET") ||
498
- errorStr.includes("ETIMEDOUT") ||
499
- errorStr.includes("Invalid response format from MCP"));
500
- if (isRetriable && retryCount < 3) {
501
- const delay = 1000 * Math.pow(2, retryCount);
502
- this.log(`Agent request failed (attempt ${retryCount + 1}/3), retrying in ${delay}ms: ${e.message}`, "warn");
503
- await new Promise((resolve) => setTimeout(resolve, delay));
504
- return this.call(userInput, _messages, retryCount + 1);
505
- }
507
+ }
508
+ const errorStr = e.toString();
509
+ const isNonRetriable = errorStr.includes("401") ||
510
+ errorStr.includes("403") ||
511
+ errorStr.includes("404");
512
+ const isRetriable = !isNonRetriable &&
513
+ (errorStr.match(/5\d\d/) ||
514
+ errorStr.includes("Failed to get models") ||
515
+ errorStr.includes("timeout") ||
516
+ errorStr.includes("ECONNRESET") ||
517
+ errorStr.includes("ETIMEDOUT") ||
518
+ errorStr.includes("Invalid response format from MCP"));
519
+ if (isRetriable && retryCount < 3) {
520
+ const delay = 1000 * Math.pow(2, retryCount);
521
+ this.log(`Agent request failed (attempt ${retryCount + 1}/3), retrying in ${delay}ms: ${e.message}`, "warn");
522
+ await new Promise((resolve) => setTimeout(resolve, delay));
523
+ return this.call(userInput, _messages, retryCount + 1);
506
524
  }
507
525
  this.log(`Agent failed: ${e}`, "error");
508
526
  if ("response" in e && "data" in e.response) {
@@ -547,8 +565,12 @@ class BaseAgent {
547
565
  remainingTimeMs: this.maxRunTimeMs && this.startTimeMs
548
566
  ? this.maxRunTimeMs - (Date.now() - this.startTimeMs)
549
567
  : undefined,
550
- remainingTurns: this.maxTurns ? this.maxTurns - this.turnCount : undefined,
551
- remainingBudget: this.maxSpend ? this.maxSpend - this.totalCostUsd : undefined,
568
+ remainingTurns: this.maxTurns
569
+ ? this.maxTurns - this.turnCount
570
+ : undefined,
571
+ remainingBudget: this.maxSpend
572
+ ? this.maxSpend - this.totalCostUsd
573
+ : undefined,
552
574
  },
553
575
  timestamp: Date.now(),
554
576
  });
@@ -577,17 +599,19 @@ class BaseAgent {
577
599
  return this.taskBreakdown;
578
600
  }
579
601
  const taskPrompt = `
602
+ Analyze all previous messages.
603
+
580
604
  Generate a detailed task breakdown for this conversation, include a section for the following:
581
605
  1. Task List
582
606
  2. Completion Criteria - when the agent should stop
583
607
 
584
- This output will be used to guide the work of the agent, and determine when we've accomplished the goal
585
-
586
- \n\n<ToAnalyze>${JSON.stringify(messages)}</ToAnalyze>`;
608
+ Your output will be used to guide the work of the agent, and determine when we've accomplished the goal
609
+ `;
587
610
  const model = this.getModel();
588
611
  const response = await this.getClient().createChatCompletion({
589
612
  model,
590
613
  messages: [
614
+ ...messages,
591
615
  {
592
616
  role: "user",
593
617
  content: taskPrompt,
@@ -596,8 +620,8 @@ class BaseAgent {
596
620
  max_tokens: 2000,
597
621
  });
598
622
  this.adjustTotalCostUsd(response.usd_cost);
599
- this.log(String(response));
600
623
  this.taskBreakdown = response.choices[0].message.content;
624
+ this.log(`task breakdown cost: ${response.usd_cost}`);
601
625
  return this.taskBreakdown;
602
626
  }
603
627
  async compressMessages(messages, startIndex, endIndex) {
@@ -655,6 +679,7 @@ class BaseAgent {
655
679
  const newLength = this.getMessagesLength(newMessages);
656
680
  const compressionRatio = (((oldLength - newLength) / oldLength) *
657
681
  100).toFixed(2);
682
+ this.log(`compression cost: ${response.usd_cost}`);
658
683
  this.log(`Compressed messages from ${oldLength} to ${newLength}, ${compressionRatio}% reduction in size`);
659
684
  return newMessages;
660
685
  }
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/agents/base/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/agents/base/base.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ class ResearcherAgent extends base_1.BaseAgent {
8
8
  description = `This agent is prepared to research a request using the tools available to them. Great for finding answers to questions about the codebase`;
9
9
  constructor(context) {
10
10
  super(context);
11
- this.setModel(ai_1.Models.google.Gemini_20_Flash);
11
+ this.setModel(ai_1.Models.google.Gemini_3_Flash_Preview);
12
12
  this.setProvider("google");
13
13
  this.disableTool("patchFile");
14
14
  this.disableTool("writeFile");
@@ -1 +1 @@
1
- {"version":3,"file":"researcher.js","sourceRoot":"","sources":["../../../../src/agents/researcher/researcher.ts"],"names":[],"mappings":";;;AAAA,iCAAkC;AAElC,uCAAuD;AAEvD,MAAa,eAAgB,SAAQ,gBAAS;IAC5C,IAAI,GAAG,YAAY,CAAC;IACpB,WAAW,GAAG,2IAA2I,CAAC;IAE1J,YAAY,OAAqB;QAC/B,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,QAAQ,CAAC,WAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAC7C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC3B,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAC9B,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAC9B,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,SAAiB;QACxC,OAAO;YACL;gBACE,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2EhB;aACM;YAED;gBACE,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,uBAAuB,SAAS;;SAExC;aACF;SACW,CAAC;IACjB,CAAC;CACF;AAvGD,0CAuGC"}
1
+ {"version":3,"file":"researcher.js","sourceRoot":"","sources":["../../../../src/agents/researcher/researcher.ts"],"names":[],"mappings":";;;AAAA,iCAAkC;AAElC,uCAAuD;AAEvD,MAAa,eAAgB,SAAQ,gBAAS;IAC5C,IAAI,GAAG,YAAY,CAAC;IACpB,WAAW,GAAG,2IAA2I,CAAC;IAE1J,YAAY,OAAqB;QAC/B,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,QAAQ,CAAC,WAAM,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;QACpD,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC3B,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAC9B,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAC9B,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,SAAiB;QACxC,OAAO;YACL;gBACE,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2EhB;aACM;YAED;gBACE,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,uBAAuB,SAAS;;SAExC;aACF;SACW,CAAC;IACjB,CAAC;CACF;AAvGD,0CAuGC"}
@@ -6,3 +6,6 @@ export declare function listAllModels(): Promise<Record<string, string[]>>;
6
6
  export declare function listAllProviders(): Promise<string[]>;
7
7
  export declare function listAllCompletionModels(): Promise<Record<string, string[]>>;
8
8
  export declare function listAllEmbeddingModels(): Promise<Record<string, string[]>>;
9
+ export declare function listAllImageModels(): Promise<Record<string, string[]>>;
10
+ export declare function listAllAudioModels(): Promise<Record<string, string[]>>;
11
+ export declare function listAllVideoModels(): Promise<Record<string, string[]>>;