@tyvm/knowhow 0.0.86 → 0.0.87

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tyvm/knowhow",
3
- "version": "0.0.86",
3
+ "version": "0.0.87",
4
4
  "description": "ai cli with plugins and agents",
5
5
  "main": "ts_build/src/index.js",
6
6
  "bin": {
@@ -127,7 +127,7 @@ function drawBox(
127
127
  const contentLines = lines.map((line) => {
128
128
  const visible = stripAnsi(line);
129
129
  const padLen = Math.max(0, innerWidth - visible.length);
130
- return headerColor + toolBox.v + c.reset + " " + line + " ".repeat(padLen - 1) + headerColor + toolBox.v + c.reset;
130
+ return headerColor + toolBox.v + c.reset + " " + line + " ".repeat(Math.max(0, padLen - 1)) + headerColor + toolBox.v + c.reset;
131
131
  });
132
132
 
133
133
  const bottomLine = headerColor + toolBox.bl + toolBox.h.repeat(innerWidth) + toolBox.br + c.reset;
@@ -101,7 +101,7 @@ export interface AudioTranscriptionResponse {
101
101
  text: string;
102
102
  language?: string;
103
103
  duration?: number;
104
- segments?: Array<{
104
+ segments?: {
105
105
  id: number;
106
106
  seek: number;
107
107
  start: number;
@@ -112,7 +112,7 @@ export interface AudioTranscriptionResponse {
112
112
  avg_logprob: number;
113
113
  compression_ratio: number;
114
114
  no_speech_prob: number;
115
- }>;
115
+ }[];
116
116
  usd_cost?: number;
117
117
  }
118
118
 
@@ -143,32 +143,32 @@ export interface ImageGenerationOptions {
143
143
 
144
144
  export interface ImageGenerationResponse {
145
145
  created: number;
146
- data: Array<{
146
+ data: {
147
147
  url?: string;
148
148
  b64_json?: string;
149
149
  revised_prompt?: string;
150
- }>;
150
+ }[];
151
151
  usd_cost?: number;
152
152
  }
153
153
 
154
154
  export interface VideoGenerationOptions {
155
155
  model: string;
156
156
  prompt: string;
157
- duration?: number; // seconds
158
- resolution?: string; // e.g. "1080p", "720p"
159
- aspect_ratio?: string; // e.g. "16:9", "9:16", "1:1"
160
- n?: number; // number of videos to generate
161
- image_url?: string; // for image-to-video (XAI)
162
- video_url?: string; // for video editing (XAI)
157
+ duration?: number; // seconds
158
+ resolution?: string; // e.g. "1080p", "720p"
159
+ aspect_ratio?: string; // e.g. "16:9", "9:16", "1:1"
160
+ n?: number; // number of videos to generate
161
+ image_url?: string; // for image-to-video (XAI)
162
+ video_url?: string; // for video editing (XAI)
163
163
  }
164
164
 
165
165
  export interface VideoGenerationResponse {
166
166
  created: number;
167
- data: Array<{
167
+ data: {
168
168
  url?: string;
169
169
  b64_json?: string;
170
170
  video?: Buffer;
171
- }>;
171
+ }[];
172
172
  /** Opaque provider-specific job/operation ID used for status polling */
173
173
  jobId?: string;
174
174
  usd_cost?: number;
@@ -185,12 +185,12 @@ export interface VideoStatusResponse {
185
185
  /** "queued" | "in_progress" | "completed" | "failed" | "expired" */
186
186
  status: "queued" | "in_progress" | "completed" | "failed" | "expired";
187
187
  /** Available when status === "completed" */
188
- data?: Array<{
188
+ data?: {
189
189
  url?: string;
190
190
  b64_json?: string;
191
191
  /** File resource name (Google) or asset identifier (other providers) */
192
192
  fileUri?: string;
193
- }>;
193
+ }[];
194
194
  error?: string;
195
195
  progress?: number;
196
196
  }
@@ -265,5 +265,7 @@ export interface GenericClient {
265
265
  * - threshold: the point at which compression should kick in; equals contextLimit
266
266
  * unless the model has tiered pricing (input_gt_200k), in which case it is 200_000
267
267
  */
268
- getContextLimit?(model: string): { contextLimit: number; threshold: number } | undefined;
268
+ getContextLimit?(
269
+ model: string
270
+ ): { contextLimit: number; threshold: number } | undefined;
269
271
  }
@@ -262,7 +262,7 @@ export class ToolsService {
262
262
  toolCallId: toolCall.id,
263
263
  functionName,
264
264
  functionArgs,
265
- functionResp: functionResponse || "Done",
265
+ functionResp: this.unwrapMcpResponse(functionResponse) || "Done",
266
266
  };
267
267
  } catch (error) {
268
268
  console.log(error.message);
@@ -414,6 +414,61 @@ export class ToolsService {
414
414
  return matchingWrappers;
415
415
  }
416
416
 
417
+ /**
418
+ * Tries to parse a string as JSON, returns null if it fails
419
+ */
420
+ private tryParseJson(value: string): any | null {
421
+ try {
422
+ return JSON.parse(value);
423
+ } catch {
424
+ return null;
425
+ }
426
+ }
427
+
428
+ /**
429
+ * Unwraps nested MCP-style tool responses.
430
+ *
431
+ * Handles responses shaped like:
432
+ * { content: [{ type: "text", text: "<json string>" }] }
433
+ *
434
+ * If the `text` field is itself JSON (or contains another layer of the same
435
+ * structure), this method unwraps recursively until there is nothing more
436
+ * to unwrap.
437
+ *
438
+ * @param response - The raw tool response value (any type)
439
+ * @returns The innermost unwrapped value
440
+ */
441
+ unwrapMcpResponse(response: any): any {
442
+ // Only objects can have the content-array wrapper
443
+ if (response === null || typeof response !== "object") {
444
+ return response;
445
+ }
446
+
447
+ const { content } = response;
448
+ if (!Array.isArray(content) || content.length === 0) {
449
+ return response;
450
+ }
451
+
452
+ const firstItem = content[0];
453
+ if (
454
+ !firstItem ||
455
+ firstItem.type !== "text" ||
456
+ typeof firstItem.text !== "string"
457
+ ) {
458
+ return response;
459
+ }
460
+
461
+ // Try to parse the text as JSON
462
+ const parsed = this.tryParseJson(firstItem.text);
463
+ if (parsed === null) {
464
+ // text is not JSON – return the text string as the unwrapped value
465
+ return firstItem.text;
466
+ }
467
+
468
+ // Recursively unwrap in case there are more layers
469
+ return this.unwrapMcpResponse(parsed);
470
+ }
471
+
417
472
  getOriginalFunction(name: string): ((...args: any[]) => any) | undefined {
418
473
  return this.originalFunctions[name];
419
474
  }
@@ -1,8 +1,8 @@
1
- import {
2
- ResourceQuotas,
1
+ import {
2
+ ResourceQuotas,
3
3
  SecurityPolicy,
4
4
  QuotaUsage,
5
- PolicyViolation
5
+ PolicyViolation
6
6
  } from './types';
7
7
 
8
8
  /**
@@ -11,10 +11,11 @@ import {
11
11
  export class ScriptPolicyEnforcer {
12
12
  private usage: QuotaUsage;
13
13
  private violations: PolicyViolation[] = [];
14
+ private complexityLimit: number = 150; // Arbitrary limit for script complexity
14
15
 
15
16
  constructor(
16
17
  private quotas: ResourceQuotas,
17
- private policy: SecurityPolicy
18
+ private policy: SecurityPolicy,
18
19
  ) {
19
20
  this.usage = {
20
21
  toolCalls: 0,
@@ -35,7 +36,7 @@ export class ScriptPolicyEnforcer {
35
36
  }
36
37
 
37
38
  // Check if tool is in allowlist (if allowlist is defined and not empty)
38
- if (this.policy.allowlistedTools && this.policy.allowlistedTools.length > 0 &&
39
+ if (this.policy.allowlistedTools && this.policy.allowlistedTools.length > 0 &&
39
40
  !this.policy.allowlistedTools.includes(toolName)) {
40
41
  this.recordViolation('tool_not_allowed', `Tool '${toolName}' is not in allowlist`);
41
42
  return false;
@@ -206,7 +207,7 @@ export class ScriptPolicyEnforcer {
206
207
  complexityScore += matches ? matches.length : 0;
207
208
  }
208
209
 
209
- if (complexityScore > 50) {
210
+ if (complexityScore > this.complexityLimit) {
210
211
  issues.push(`Script complexity too high: ${complexityScore} constructs detected`);
211
212
  }
212
213
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tyvm/knowhow",
3
- "version": "0.0.86",
3
+ "version": "0.0.87",
4
4
  "description": "ai cli with plugins and agents",
5
5
  "main": "ts_build/src/index.js",
6
6
  "bin": {
@@ -86,7 +86,7 @@ function drawBox(lines, headerLabel, headerColor, width) {
86
86
  const contentLines = lines.map((line) => {
87
87
  const visible = stripAnsi(line);
88
88
  const padLen = Math.max(0, innerWidth - visible.length);
89
- return headerColor + toolBox.v + c.reset + " " + line + " ".repeat(padLen - 1) + headerColor + toolBox.v + c.reset;
89
+ return headerColor + toolBox.v + c.reset + " " + line + " ".repeat(Math.max(0, padLen - 1)) + headerColor + toolBox.v + c.reset;
90
90
  });
91
91
  const bottomLine = headerColor + toolBox.bl + toolBox.h.repeat(innerWidth) + toolBox.br + c.reset;
92
92
  return [topLine, ...contentLines, bottomLine].join("\n");
@@ -1 +1 @@
1
- {"version":3,"file":"FancyRenderer.js","sourceRoot":"","sources":["../../../../src/chat/renderer/FancyRenderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FancyRenderer.js","sourceRoot":"","sources":["../../../../src/chat/renderer/FancyRenderer.ts"],"names":[],"mappings":"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"}
@@ -105,7 +105,7 @@ export interface AudioTranscriptionResponse {
105
105
  text: string;
106
106
  language?: string;
107
107
  duration?: number;
108
- segments?: Array<{
108
+ segments?: {
109
109
  id: number;
110
110
  seek: number;
111
111
  start: number;
@@ -116,7 +116,7 @@ export interface AudioTranscriptionResponse {
116
116
  avg_logprob: number;
117
117
  compression_ratio: number;
118
118
  no_speech_prob: number;
119
- }>;
119
+ }[];
120
120
  usd_cost?: number;
121
121
  }
122
122
  export interface AudioGenerationOptions {
@@ -143,11 +143,11 @@ export interface ImageGenerationOptions {
143
143
  }
144
144
  export interface ImageGenerationResponse {
145
145
  created: number;
146
- data: Array<{
146
+ data: {
147
147
  url?: string;
148
148
  b64_json?: string;
149
149
  revised_prompt?: string;
150
- }>;
150
+ }[];
151
151
  usd_cost?: number;
152
152
  }
153
153
  export interface VideoGenerationOptions {
@@ -162,11 +162,11 @@ export interface VideoGenerationOptions {
162
162
  }
163
163
  export interface VideoGenerationResponse {
164
164
  created: number;
165
- data: Array<{
165
+ data: {
166
166
  url?: string;
167
167
  b64_json?: string;
168
168
  video?: Buffer;
169
- }>;
169
+ }[];
170
170
  jobId?: string;
171
171
  usd_cost?: number;
172
172
  }
@@ -177,11 +177,11 @@ export interface VideoStatusOptions {
177
177
  export interface VideoStatusResponse {
178
178
  jobId: string;
179
179
  status: "queued" | "in_progress" | "completed" | "failed" | "expired";
180
- data?: Array<{
180
+ data?: {
181
181
  url?: string;
182
182
  b64_json?: string;
183
183
  fileUri?: string;
184
- }>;
184
+ }[];
185
185
  error?: string;
186
186
  progress?: number;
187
187
  }
@@ -57,6 +57,8 @@ export declare class ToolsService {
57
57
  private applyOverridesAndWrappers;
58
58
  private findMatchingOverride;
59
59
  private findMatchingWrappers;
60
+ private tryParseJson;
61
+ unwrapMcpResponse(response: any): any;
60
62
  getOriginalFunction(name: string): ((...args: any[]) => any) | undefined;
61
63
  clearOverrides(): void;
62
64
  }
@@ -173,7 +173,7 @@ class ToolsService {
173
173
  toolCallId: toolCall.id,
174
174
  functionName,
175
175
  functionArgs,
176
- functionResp: functionResponse || "Done",
176
+ functionResp: this.unwrapMcpResponse(functionResponse) || "Done",
177
177
  };
178
178
  }
179
179
  catch (error) {
@@ -282,6 +282,34 @@ class ToolsService {
282
282
  }
283
283
  return matchingWrappers;
284
284
  }
285
+ tryParseJson(value) {
286
+ try {
287
+ return JSON.parse(value);
288
+ }
289
+ catch {
290
+ return null;
291
+ }
292
+ }
293
+ unwrapMcpResponse(response) {
294
+ if (response === null || typeof response !== "object") {
295
+ return response;
296
+ }
297
+ const { content } = response;
298
+ if (!Array.isArray(content) || content.length === 0) {
299
+ return response;
300
+ }
301
+ const firstItem = content[0];
302
+ if (!firstItem ||
303
+ firstItem.type !== "text" ||
304
+ typeof firstItem.text !== "string") {
305
+ return response;
306
+ }
307
+ const parsed = this.tryParseJson(firstItem.text);
308
+ if (parsed === null) {
309
+ return firstItem.text;
310
+ }
311
+ return this.unwrapMcpResponse(parsed);
312
+ }
285
313
  getOriginalFunction(name) {
286
314
  return this.originalFunctions[name];
287
315
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Tools.js","sourceRoot":"","sources":["../../../src/services/Tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Tools.js","sourceRoot":"","sources":["../../../src/services/Tools.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ export declare class ScriptPolicyEnforcer {
4
4
  private policy;
5
5
  private usage;
6
6
  private violations;
7
+ private complexityLimit;
7
8
  constructor(quotas: ResourceQuotas, policy: SecurityPolicy);
8
9
  checkToolCall(toolName: string): boolean;
9
10
  recordToolCall(): void;
@@ -6,6 +6,7 @@ class ScriptPolicyEnforcer {
6
6
  policy;
7
7
  usage;
8
8
  violations = [];
9
+ complexityLimit = 150;
9
10
  constructor(quotas, policy) {
10
11
  this.quotas = quotas;
11
12
  this.policy = policy;
@@ -124,7 +125,7 @@ class ScriptPolicyEnforcer {
124
125
  const matches = scriptContent.match(indicator);
125
126
  complexityScore += matches ? matches.length : 0;
126
127
  }
127
- if (complexityScore > 50) {
128
+ if (complexityScore > this.complexityLimit) {
128
129
  issues.push(`Script complexity too high: ${complexityScore} constructs detected`);
129
130
  }
130
131
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"ScriptPolicy.js","sourceRoot":"","sources":["../../../../src/services/script-execution/ScriptPolicy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ScriptPolicy.js","sourceRoot":"","sources":["../../../../src/services/script-execution/ScriptPolicy.ts"],"names":[],"mappings":"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"}