jiva-core 0.3.3-dev.dc3cf03 → 0.3.4-dev.945ddfc

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 (118) hide show
  1. package/README.md +232 -570
  2. package/dist/code/agent.d.ts +105 -0
  3. package/dist/code/agent.d.ts.map +1 -0
  4. package/dist/code/agent.js +697 -0
  5. package/dist/code/agent.js.map +1 -0
  6. package/dist/code/file-lock.d.ts +15 -0
  7. package/dist/code/file-lock.d.ts.map +1 -0
  8. package/dist/code/file-lock.js +36 -0
  9. package/dist/code/file-lock.js.map +1 -0
  10. package/dist/code/lsp/client.d.ts +30 -0
  11. package/dist/code/lsp/client.d.ts.map +1 -0
  12. package/dist/code/lsp/client.js +181 -0
  13. package/dist/code/lsp/client.js.map +1 -0
  14. package/dist/code/lsp/language.d.ts +12 -0
  15. package/dist/code/lsp/language.d.ts.map +1 -0
  16. package/dist/code/lsp/language.js +145 -0
  17. package/dist/code/lsp/language.js.map +1 -0
  18. package/dist/code/lsp/manager.d.ts +39 -0
  19. package/dist/code/lsp/manager.d.ts.map +1 -0
  20. package/dist/code/lsp/manager.js +108 -0
  21. package/dist/code/lsp/manager.js.map +1 -0
  22. package/dist/code/lsp/server.d.ts +15 -0
  23. package/dist/code/lsp/server.d.ts.map +1 -0
  24. package/dist/code/lsp/server.js +78 -0
  25. package/dist/code/lsp/server.js.map +1 -0
  26. package/dist/code/tools/bash.d.ts +3 -0
  27. package/dist/code/tools/bash.d.ts.map +1 -0
  28. package/dist/code/tools/bash.js +110 -0
  29. package/dist/code/tools/bash.js.map +1 -0
  30. package/dist/code/tools/edit.d.ts +11 -0
  31. package/dist/code/tools/edit.d.ts.map +1 -0
  32. package/dist/code/tools/edit.js +459 -0
  33. package/dist/code/tools/edit.js.map +1 -0
  34. package/dist/code/tools/glob.d.ts +3 -0
  35. package/dist/code/tools/glob.d.ts.map +1 -0
  36. package/dist/code/tools/glob.js +62 -0
  37. package/dist/code/tools/glob.js.map +1 -0
  38. package/dist/code/tools/grep.d.ts +3 -0
  39. package/dist/code/tools/grep.d.ts.map +1 -0
  40. package/dist/code/tools/grep.js +147 -0
  41. package/dist/code/tools/grep.js.map +1 -0
  42. package/dist/code/tools/index.d.ts +31 -0
  43. package/dist/code/tools/index.d.ts.map +1 -0
  44. package/dist/code/tools/index.js +9 -0
  45. package/dist/code/tools/index.js.map +1 -0
  46. package/dist/code/tools/read.d.ts +3 -0
  47. package/dist/code/tools/read.d.ts.map +1 -0
  48. package/dist/code/tools/read.js +120 -0
  49. package/dist/code/tools/read.js.map +1 -0
  50. package/dist/code/tools/spawn.d.ts +3 -0
  51. package/dist/code/tools/spawn.d.ts.map +1 -0
  52. package/dist/code/tools/spawn.js +49 -0
  53. package/dist/code/tools/spawn.js.map +1 -0
  54. package/dist/code/tools/write.d.ts +3 -0
  55. package/dist/code/tools/write.d.ts.map +1 -0
  56. package/dist/code/tools/write.js +82 -0
  57. package/dist/code/tools/write.js.map +1 -0
  58. package/dist/core/agent-interface.d.ts +54 -0
  59. package/dist/core/agent-interface.d.ts.map +1 -0
  60. package/dist/core/agent-interface.js +8 -0
  61. package/dist/core/agent-interface.js.map +1 -0
  62. package/dist/core/client-agent.d.ts.map +1 -1
  63. package/dist/core/client-agent.js +26 -3
  64. package/dist/core/client-agent.js.map +1 -1
  65. package/dist/core/config.d.ts +144 -17
  66. package/dist/core/config.d.ts.map +1 -1
  67. package/dist/core/config.js +25 -1
  68. package/dist/core/config.js.map +1 -1
  69. package/dist/core/conversation-manager.d.ts +4 -1
  70. package/dist/core/conversation-manager.d.ts.map +1 -1
  71. package/dist/core/conversation-manager.js +47 -17
  72. package/dist/core/conversation-manager.js.map +1 -1
  73. package/dist/core/dual-agent.d.ts +3 -10
  74. package/dist/core/dual-agent.d.ts.map +1 -1
  75. package/dist/core/dual-agent.js +53 -119
  76. package/dist/core/dual-agent.js.map +1 -1
  77. package/dist/core/manager-agent.d.ts +30 -0
  78. package/dist/core/manager-agent.d.ts.map +1 -1
  79. package/dist/core/manager-agent.js +114 -14
  80. package/dist/core/manager-agent.js.map +1 -1
  81. package/dist/core/worker-agent.d.ts +12 -2
  82. package/dist/core/worker-agent.d.ts.map +1 -1
  83. package/dist/core/worker-agent.js +254 -67
  84. package/dist/core/worker-agent.js.map +1 -1
  85. package/dist/index.d.ts +3 -0
  86. package/dist/index.d.ts.map +1 -1
  87. package/dist/index.js +2 -0
  88. package/dist/index.js.map +1 -1
  89. package/dist/interfaces/cli/index.js +146 -25
  90. package/dist/interfaces/cli/index.js.map +1 -1
  91. package/dist/interfaces/cli/repl.d.ts +8 -2
  92. package/dist/interfaces/cli/repl.d.ts.map +1 -1
  93. package/dist/interfaces/cli/repl.js +39 -3
  94. package/dist/interfaces/cli/repl.js.map +1 -1
  95. package/dist/interfaces/cli/setup-wizard.d.ts.map +1 -1
  96. package/dist/interfaces/cli/setup-wizard.js +92 -0
  97. package/dist/interfaces/cli/setup-wizard.js.map +1 -1
  98. package/dist/interfaces/http/routes/chat.js +2 -2
  99. package/dist/interfaces/http/routes/chat.js.map +1 -1
  100. package/dist/interfaces/http/session-manager.d.ts +7 -4
  101. package/dist/interfaces/http/session-manager.d.ts.map +1 -1
  102. package/dist/interfaces/http/session-manager.js +56 -15
  103. package/dist/interfaces/http/session-manager.js.map +1 -1
  104. package/dist/models/base.d.ts +8 -0
  105. package/dist/models/base.d.ts.map +1 -1
  106. package/dist/models/harmony.d.ts +7 -1
  107. package/dist/models/harmony.d.ts.map +1 -1
  108. package/dist/models/harmony.js +21 -3
  109. package/dist/models/harmony.js.map +1 -1
  110. package/dist/models/krutrim.d.ts +31 -1
  111. package/dist/models/krutrim.d.ts.map +1 -1
  112. package/dist/models/krutrim.js +55 -11
  113. package/dist/models/krutrim.js.map +1 -1
  114. package/dist/models/orchestrator.d.ts +24 -0
  115. package/dist/models/orchestrator.d.ts.map +1 -1
  116. package/dist/models/orchestrator.js +40 -6
  117. package/dist/models/orchestrator.js.map +1 -1
  118. package/package.json +8 -5
@@ -16,19 +16,18 @@ export class KrutrimModel {
16
16
  return this.config.type === 'multimodal';
17
17
  }
18
18
  supportsToolCalling() {
19
- // Only reasoning model (gpt-oss-120b) supports tool calling
20
- return this.config.type === 'reasoning';
19
+ // Both the reasoning model and dedicated tool-calling model support tool calling
20
+ return this.config.type === 'reasoning' || this.config.type === 'tool-calling';
21
21
  }
22
22
  async chat(options) {
23
- const isReasoningModel = this.config.type === 'reasoning';
23
+ // 'tool-calling' models are treated as reasoning models for tool-call formatting purposes
24
+ const isReasoningModel = this.config.type === 'reasoning' || this.config.type === 'tool-calling';
24
25
  // Retry logic for transient errors (WAF/rate limiting/server errors)
25
- const maxRetries = 3;
26
+ const maxRetries = 4;
26
27
  let lastError = null;
27
28
  for (let attempt = 0; attempt <= maxRetries; attempt++) {
28
29
  if (attempt > 0) {
29
- const waitTime = Math.pow(2, attempt) * 1000; // Exponential backoff: 2s, 4s, 8s
30
- logger.warn(`Retrying after ${waitTime}ms (attempt ${attempt + 1}/${maxRetries + 1})...`);
31
- await new Promise(resolve => setTimeout(resolve, waitTime));
30
+ await new Promise(resolve => setTimeout(resolve, this._lastRetryWait ?? 2000));
32
31
  }
33
32
  try {
34
33
  return await this.attemptChat(options, isReasoningModel);
@@ -37,8 +36,9 @@ export class KrutrimModel {
37
36
  lastError = error;
38
37
  // Retry on transient errors: 403 (WAF), 429 (rate limit), 500/502/503/504 (server errors)
39
38
  if (error instanceof ModelError) {
39
+ const is429 = error.message.includes('(429)');
40
40
  const shouldRetry = error.message.includes('(403)') || // WAF blocking
41
- error.message.includes('(429)') || // Rate limiting
41
+ is429 || // Rate limiting
42
42
  error.message.includes('(500)') || // Internal server error
43
43
  error.message.includes('(502)') || // Bad gateway
44
44
  error.message.includes('(503)') || // Service unavailable
@@ -50,7 +50,7 @@ export class KrutrimModel {
50
50
  let errorType = 'Unknown error';
51
51
  if (error.message.includes('(403)'))
52
52
  errorType = '403 Access Denied (WAF)';
53
- else if (error.message.includes('(429)'))
53
+ else if (is429)
54
54
  errorType = '429 Rate Limited';
55
55
  else if (error.message.includes('(500)'))
56
56
  errorType = '500 Internal Server Error';
@@ -60,7 +60,21 @@ export class KrutrimModel {
60
60
  errorType = '503 Service Unavailable';
61
61
  else if (error.message.includes('(504)'))
62
62
  errorType = '504 Gateway Timeout';
63
- logger.warn(`Got ${errorType}, will retry...`);
63
+ // For 429s, parse the actual retry-after time from the error message.
64
+ // Groq returns: "Please try again in 8.53s."
65
+ if (is429) {
66
+ const match = error.message.match(/try again in (\d+(?:\.\d+)?)\s*s/i);
67
+ const retryAfterMs = match ? Math.ceil(parseFloat(match[1]) * 1000) + 500 : null;
68
+ // Use parsed time, falling back to capped exponential backoff
69
+ const exponential = Math.min(Math.pow(2, attempt) * 1000, 30_000);
70
+ this._lastRetryWait = retryAfterMs ?? exponential;
71
+ logger.warn(`Got ${errorType}, will retry in ${(this._lastRetryWait / 1000).toFixed(1)}s (attempt ${attempt + 1}/${maxRetries + 1})...`);
72
+ }
73
+ else {
74
+ const waitTime = Math.min(Math.pow(2, attempt) * 1000, 30_000);
75
+ this._lastRetryWait = waitTime;
76
+ logger.warn(`Got ${errorType}, will retry in ${waitTime / 1000}s (attempt ${attempt + 1}/${maxRetries + 1})...`);
77
+ }
64
78
  }
65
79
  else {
66
80
  throw error;
@@ -69,6 +83,8 @@ export class KrutrimModel {
69
83
  }
70
84
  throw lastError;
71
85
  }
86
+ /** Retry wait time in ms, set dynamically based on API hint or exponential backoff. */
87
+ _lastRetryWait;
72
88
  async attemptChat(options, isReasoningModel) {
73
89
  try {
74
90
  let messages;
@@ -101,6 +117,17 @@ export class KrutrimModel {
101
117
  }
102
118
  return msg;
103
119
  });
120
+ // ── Reasoning effort ────────────────────────────────────────────────────
121
+ // Per-call value takes precedence over model-level default.
122
+ const effort = options.reasoningEffort ?? this.config.defaultReasoningEffort;
123
+ const strategy = this.config.reasoningEffortStrategy ?? 'both';
124
+ // System-prompt injection: prepend "Reasoning: <level>" as the very first
125
+ // system message. gpt-oss-120b understands this on any provider — it's the
126
+ // official fallback for Krutrim/self-hosted endpoints that strip unknown
127
+ // request body params.
128
+ if (effort && isReasoningModel && (strategy === 'system_prompt' || strategy === 'both')) {
129
+ apiMessages.unshift({ role: 'system', content: `Reasoning: ${effort}` });
130
+ }
104
131
  const requestBody = {
105
132
  model: options.model || this.config.model,
106
133
  messages: apiMessages,
@@ -109,6 +136,16 @@ export class KrutrimModel {
109
136
  if (options.maxTokens) {
110
137
  requestBody.max_tokens = options.maxTokens;
111
138
  }
139
+ // API param: native Groq support; silently ignored by providers that don't implement it.
140
+ if (effort && isReasoningModel && (strategy === 'api_param' || strategy === 'both')) {
141
+ requestBody.reasoning_effort = effort;
142
+ }
143
+ // include_reasoning: request thinking tokens in the response (Groq-specific).
144
+ // When present, tokens appear in choice.message.reasoning and are logged below.
145
+ if (this.config.includeReasoning && isReasoningModel) {
146
+ requestBody.include_reasoning = true;
147
+ }
148
+ // ────────────────────────────────────────────────────────────────────────
112
149
  // Send tools in standard OpenAI format if not using Harmony
113
150
  if (!useHarmony && isReasoningModel && options.tools && options.tools.length > 0) {
114
151
  requestBody.tools = options.tools.map(t => ({
@@ -160,6 +197,12 @@ export class KrutrimModel {
160
197
  }
161
198
  const choice = data.choices[0];
162
199
  const messageContent = choice.message?.content || '';
200
+ // Log reasoning tokens when include_reasoning=true (Groq returns them in
201
+ // choice.message.reasoning). Useful for debugging model "thinking" quality.
202
+ const reasoningTokens = choice.message?.reasoning;
203
+ if (reasoningTokens) {
204
+ logger.debug(`[Model reasoning] ${reasoningTokens.substring(0, 2000)}${reasoningTokens.length > 2000 ? '…' : ''}`);
205
+ }
163
206
  // Parse response based on format used
164
207
  if (useHarmony && isReasoningModel && options.tools && options.tools.length > 0) {
165
208
  // Parse Harmony format response (Krutrim-specific)
@@ -238,11 +281,12 @@ export class KrutrimModel {
238
281
  const startTime = Date.now();
239
282
  try {
240
283
  logger.debug(`Testing connectivity to ${this.config.endpoint}...`);
241
- // Simple test request with minimal tokens
284
+ // Simple test request with minimal tokens and low reasoning effort (it's just a ping)
242
285
  const testResponse = await this.chat({
243
286
  messages: [{ role: 'user', content: 'test' }],
244
287
  temperature: 0,
245
288
  maxTokens: 5,
289
+ reasoningEffort: 'low',
246
290
  });
247
291
  const latency = Date.now() - startTime;
248
292
  logger.debug(`Connectivity test passed in ${latency}ms`);
@@ -1 +1 @@
1
- {"version":3,"file":"krutrim.js","sourceRoot":"","sources":["../../src/models/krutrim.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"krutrim.js","sourceRoot":"","sources":["../../src/models/krutrim.ts"],"names":[],"mappings":"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"}
@@ -8,15 +8,35 @@ import { ChatCompletionOptions, ModelResponse } from './base.js';
8
8
  export interface OrchestratorConfig {
9
9
  reasoningModel: KrutrimModel;
10
10
  multimodalModel?: KrutrimModel;
11
+ /**
12
+ * Optional dedicated tool-calling LLM.
13
+ * When configured this model is used as the *primary* model for all tool
14
+ * calls (it reliably serialises tool arguments as standard OpenAI JSON).
15
+ * The reasoning model then serves as the secondary fallback.
16
+ * If not configured the reasoning model is the only model used for tool calls.
17
+ */
18
+ toolCallingModel?: KrutrimModel;
11
19
  }
12
20
  export declare class ModelOrchestrator {
13
21
  private reasoningModel;
14
22
  private multimodalModel?;
23
+ private toolCallingModel?;
15
24
  constructor(config: OrchestratorConfig);
16
25
  /**
17
26
  * Process a chat completion with automatic model selection
18
27
  */
19
28
  chat(options: ChatCompletionOptions): Promise<ModelResponse>;
29
+ /**
30
+ * Process a chat completion, selecting the model based on `useFallback`.
31
+ * useFallback=true → use tool-calling model (primary when configured)
32
+ * useFallback=false → use reasoning model (primary when no tool-calling model configured)
33
+ * Images are always pre-processed by the multimodal model prior to routing.
34
+ */
35
+ chatWithFallback(options: ChatCompletionOptions, useFallback: boolean): Promise<ModelResponse>;
36
+ /**
37
+ * Check if a dedicated tool-calling model is configured.
38
+ */
39
+ hasToolCallingModel(): boolean;
20
40
  /**
21
41
  * Handle requests with image content
22
42
  */
@@ -41,6 +61,10 @@ export declare class ModelOrchestrator {
41
61
  * Get multimodal model instance if configured
42
62
  */
43
63
  getMultimodalModel(): KrutrimModel | undefined;
64
+ /**
65
+ * Get tool-calling model instance if configured
66
+ */
67
+ getToolCallingModel(): KrutrimModel | undefined;
44
68
  /**
45
69
  * Check if multimodal support is available
46
70
  */
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/models/orchestrator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAA2B,qBAAqB,EAAE,aAAa,EAAQ,MAAM,WAAW,CAAC;AAIhG,MAAM,WAAW,kBAAkB;IACjC,cAAc,EAAE,YAAY,CAAC;IAC7B,eAAe,CAAC,EAAE,YAAY,CAAC;CAChC;AAED,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,cAAc,CAAe;IACrC,OAAO,CAAC,eAAe,CAAC,CAAe;gBAE3B,MAAM,EAAE,kBAAkB;IAKtC;;OAEG;IACG,IAAI,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,aAAa,CAAC;IAalE;;OAEG;YACW,uBAAuB;IAgDrC;;OAEG;IACH,OAAO,CAAC,eAAe;IASvB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAe5B;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAiCrC;;OAEG;IACH,iBAAiB,IAAI,YAAY;IAIjC;;OAEG;IACH,kBAAkB,IAAI,YAAY,GAAG,SAAS;IAI9C;;OAEG;IACH,oBAAoB,IAAI,OAAO;CAGhC"}
1
+ {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/models/orchestrator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAA2B,qBAAqB,EAAE,aAAa,EAAQ,MAAM,WAAW,CAAC;AAIhG,MAAM,WAAW,kBAAkB;IACjC,cAAc,EAAE,YAAY,CAAC;IAC7B,eAAe,CAAC,EAAE,YAAY,CAAC;IAC/B;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,YAAY,CAAC;CACjC;AAED,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,cAAc,CAAe;IACrC,OAAO,CAAC,eAAe,CAAC,CAAe;IACvC,OAAO,CAAC,gBAAgB,CAAC,CAAe;gBAE5B,MAAM,EAAE,kBAAkB;IAMtC;;OAEG;IACG,IAAI,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,aAAa,CAAC;IAIlE;;;;;OAKG;IACG,gBAAgB,CAAC,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC;IAmBpG;;OAEG;IACH,mBAAmB,IAAI,OAAO;IAI9B;;OAEG;YACW,uBAAuB;IA0DrC;;OAEG;IACH,OAAO,CAAC,eAAe;IASvB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAe5B;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAiCrC;;OAEG;IACH,iBAAiB,IAAI,YAAY;IAIjC;;OAEG;IACH,kBAAkB,IAAI,YAAY,GAAG,SAAS;IAI9C;;OAEG;IACH,mBAAmB,IAAI,YAAY,GAAG,SAAS;IAI/C;;OAEG;IACH,oBAAoB,IAAI,OAAO;CAGhC"}
@@ -8,29 +8,49 @@ import { ModelError } from '../utils/errors.js';
8
8
  export class ModelOrchestrator {
9
9
  reasoningModel;
10
10
  multimodalModel;
11
+ toolCallingModel;
11
12
  constructor(config) {
12
13
  this.reasoningModel = config.reasoningModel;
13
14
  this.multimodalModel = config.multimodalModel;
15
+ this.toolCallingModel = config.toolCallingModel;
14
16
  }
15
17
  /**
16
18
  * Process a chat completion with automatic model selection
17
19
  */
18
20
  async chat(options) {
21
+ return this.chatWithFallback(options, false);
22
+ }
23
+ /**
24
+ * Process a chat completion, selecting the model based on `useFallback`.
25
+ * useFallback=true → use tool-calling model (primary when configured)
26
+ * useFallback=false → use reasoning model (primary when no tool-calling model configured)
27
+ * Images are always pre-processed by the multimodal model prior to routing.
28
+ */
29
+ async chatWithFallback(options, useFallback) {
19
30
  // Check if request contains images
20
31
  const hasImages = this.hasImageContent(options.messages);
21
32
  if (hasImages && this.multimodalModel) {
22
- // Use multimodal model to process images first, then reasoning model
23
- return await this.handleMultimodalRequest(options);
33
+ // Use multimodal model to process images first, then primary/fallback model
34
+ return await this.handleMultimodalRequest(options, useFallback);
24
35
  }
25
- else {
26
- // Use reasoning model directly
27
- return await this.reasoningModel.chat(options);
36
+ // Use tool-calling model when requested and available
37
+ if (useFallback && this.toolCallingModel) {
38
+ logger.info(' [Orchestrator] Using tool-calling model');
39
+ return await this.toolCallingModel.chat(options);
28
40
  }
41
+ // Default: use reasoning model
42
+ return await this.reasoningModel.chat(options);
43
+ }
44
+ /**
45
+ * Check if a dedicated tool-calling model is configured.
46
+ */
47
+ hasToolCallingModel() {
48
+ return !!this.toolCallingModel;
29
49
  }
30
50
  /**
31
51
  * Handle requests with image content
32
52
  */
33
- async handleMultimodalRequest(options) {
53
+ async handleMultimodalRequest(options, useFallback = false) {
34
54
  if (!this.multimodalModel) {
35
55
  throw new ModelError('Multimodal model not configured, but request contains images');
36
56
  }
@@ -56,6 +76,14 @@ export class ModelOrchestrator {
56
76
  }
57
77
  // Replace images with descriptions for reasoning model
58
78
  const messagesWithDescriptions = this.replaceImagesWithDescriptions(options.messages, imageDescriptions);
79
+ // Now use primary/fallback model with text-only messages
80
+ if (useFallback && this.toolCallingModel) {
81
+ logger.info(' [Orchestrator] Forwarding to tool-calling model (fallback mode)...');
82
+ return await this.toolCallingModel.chat({
83
+ ...options,
84
+ messages: messagesWithDescriptions,
85
+ });
86
+ }
59
87
  // Now use reasoning model with text-only messages
60
88
  logger.info('Forwarding to reasoning model...');
61
89
  return await this.reasoningModel.chat({
@@ -129,6 +157,12 @@ export class ModelOrchestrator {
129
157
  getMultimodalModel() {
130
158
  return this.multimodalModel;
131
159
  }
160
+ /**
161
+ * Get tool-calling model instance if configured
162
+ */
163
+ getToolCallingModel() {
164
+ return this.toolCallingModel;
165
+ }
132
166
  /**
133
167
  * Check if multimodal support is available
134
168
  */
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/models/orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../src/models/orchestrator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jiva-core",
3
- "version": "0.3.3-dev.dc3cf03",
3
+ "version": "0.3.4-dev.945ddfc",
4
4
  "description": "Versatile autonomous AI agent with three-agent architecture (Manager, Worker, Client) powered by gpt-oss-120b. Adaptive validation, full MCP support, and intelligent quality control.",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -47,12 +47,14 @@
47
47
  },
48
48
  "homepage": "https://github.com/KarmaloopAI/Jiva#readme",
49
49
  "dependencies": {
50
+ "@google-cloud/storage": "^7.0.0",
50
51
  "@modelcontextprotocol/sdk": "^1.0.4",
51
52
  "@modelcontextprotocol/server-filesystem": "^2025.11.25",
52
53
  "archiver": "^7.0.1",
53
54
  "chalk": "^5.3.0",
54
55
  "commander": "^12.1.0",
55
56
  "conf": "^13.0.1",
57
+ "diff": "^8.0.3",
56
58
  "express": "^4.18.2",
57
59
  "inquirer": "^12.0.1",
58
60
  "jsonwebtoken": "^9.0.2",
@@ -60,13 +62,13 @@
60
62
  "marked-terminal": "^7.3.0",
61
63
  "ora": "^8.1.1",
62
64
  "unzipper": "^0.12.3",
65
+ "vscode-jsonrpc": "^8.2.1",
66
+ "vscode-languageserver-types": "^3.17.5",
63
67
  "ws": "^8.16.0",
64
68
  "yaml": "^2.6.1",
65
- "zod": "^3.24.1",
66
- "@google-cloud/storage": "^7.0.0"
69
+ "zod": "^3.24.1"
67
70
  },
68
71
  "devDependencies": {
69
- "ts-node": "^10.9.2",
70
72
  "@types/archiver": "^6.0.2",
71
73
  "@types/express": "^4.17.21",
72
74
  "@types/inquirer": "^9.0.7",
@@ -75,8 +77,9 @@
75
77
  "@types/node": "^22.10.2",
76
78
  "@types/unzipper": "^0.10.10",
77
79
  "@types/ws": "^8.5.10",
80
+ "ts-node": "^10.9.2",
78
81
  "tsx": "^4.19.2",
79
- "typescript": "^5.7.2"
82
+ "typescript": "^5.9.3"
80
83
  },
81
84
  "peerDependencies": {
82
85
  "firebase-admin": "^12.0.0"