@kernel.chat/kbot 3.3.2 → 3.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.
@@ -0,0 +1,250 @@
1
+ // kbot Forge Tool Security Tests
2
+ // Validates the security blocklist and input validation for forge_tool.
3
+ import { describe, it, expect } from 'vitest';
4
+ import { validateCode, registerForgeTools } from './forge.js';
5
+ import { getTool } from './index.js';
6
+ // Register once
7
+ registerForgeTools();
8
+ // -----------------------------------------------------------------
9
+ // 1. Registration
10
+ // -----------------------------------------------------------------
11
+ describe('Forge Tool Registration', () => {
12
+ it('registers the forge_tool', () => {
13
+ const tool = getTool('forge_tool');
14
+ expect(tool).toBeTruthy();
15
+ expect(tool.tier).toBe('free');
16
+ expect(tool.parameters.name.required).toBe(true);
17
+ expect(tool.parameters.code.required).toBe(true);
18
+ });
19
+ });
20
+ // -----------------------------------------------------------------
21
+ // 2. Security blocklist — code generation / eval
22
+ // -----------------------------------------------------------------
23
+ describe('Forge Security - Code Generation', () => {
24
+ it('blocks eval()', () => {
25
+ expect(validateCode('return eval("1+1")')).toEqual(expect.objectContaining({ safe: false }));
26
+ });
27
+ it('blocks new Function()', () => {
28
+ expect(validateCode('const f = new Function("return 1")')).toEqual(expect.objectContaining({ safe: false }));
29
+ });
30
+ it('blocks AsyncFunction access via getPrototypeOf', () => {
31
+ const code = 'const AF = Object.getPrototypeOf(async function(){}).constructor';
32
+ expect(validateCode(code)).toEqual(expect.objectContaining({ safe: false }));
33
+ });
34
+ it('blocks direct AsyncFunction reference', () => {
35
+ expect(validateCode('const AF = AsyncFunction')).toEqual(expect.objectContaining({ safe: false }));
36
+ });
37
+ });
38
+ // -----------------------------------------------------------------
39
+ // 3. Security blocklist — process access
40
+ // -----------------------------------------------------------------
41
+ describe('Forge Security - Process', () => {
42
+ it('blocks process.exit', () => {
43
+ expect(validateCode('process.exit(1)')).toEqual(expect.objectContaining({ safe: false }));
44
+ });
45
+ it('blocks process.kill', () => {
46
+ expect(validateCode('process.kill(process.pid)')).toEqual(expect.objectContaining({ safe: false }));
47
+ });
48
+ it('blocks process.env (secrets leakage)', () => {
49
+ expect(validateCode('return process.env.ANTHROPIC_API_KEY')).toEqual(expect.objectContaining({ safe: false }));
50
+ });
51
+ it('blocks process.binding', () => {
52
+ expect(validateCode('process.binding("spawn_sync")')).toEqual(expect.objectContaining({ safe: false }));
53
+ });
54
+ });
55
+ // -----------------------------------------------------------------
56
+ // 4. Security blocklist — child_process (both bare and node: protocol)
57
+ // -----------------------------------------------------------------
58
+ describe('Forge Security - Child Process', () => {
59
+ it('blocks require("child_process")', () => {
60
+ expect(validateCode('const cp = require("child_process")')).toEqual(expect.objectContaining({ safe: false }));
61
+ });
62
+ it('blocks require("node:child_process")', () => {
63
+ expect(validateCode('const cp = require("node:child_process")')).toEqual(expect.objectContaining({ safe: false }));
64
+ });
65
+ it('blocks import("child_process")', () => {
66
+ expect(validateCode('const cp = await import("child_process")')).toEqual(expect.objectContaining({ safe: false }));
67
+ });
68
+ it('blocks import("node:child_process")', () => {
69
+ expect(validateCode('const cp = await import("node:child_process")')).toEqual(expect.objectContaining({ safe: false }));
70
+ });
71
+ it('blocks execSync', () => {
72
+ expect(validateCode('execSync("whoami")')).toEqual(expect.objectContaining({ safe: false }));
73
+ });
74
+ it('blocks spawnSync', () => {
75
+ expect(validateCode('spawnSync("ls")')).toEqual(expect.objectContaining({ safe: false }));
76
+ });
77
+ it('blocks exec()', () => {
78
+ expect(validateCode('exec("ls", (e, s) => {})')).toEqual(expect.objectContaining({ safe: false }));
79
+ });
80
+ it('blocks spawn()', () => {
81
+ expect(validateCode('spawn("ls", ["-la"])')).toEqual(expect.objectContaining({ safe: false }));
82
+ });
83
+ it('blocks execFileSync', () => {
84
+ expect(validateCode('execFileSync("/bin/sh", ["-c", "id"])')).toEqual(expect.objectContaining({ safe: false }));
85
+ });
86
+ });
87
+ // -----------------------------------------------------------------
88
+ // 5. Security blocklist — filesystem
89
+ // -----------------------------------------------------------------
90
+ describe('Forge Security - Filesystem', () => {
91
+ it('blocks require("fs")', () => {
92
+ expect(validateCode('const fs = require("fs")')).toEqual(expect.objectContaining({ safe: false }));
93
+ });
94
+ it('blocks require("node:fs")', () => {
95
+ expect(validateCode('const fs = require("node:fs")')).toEqual(expect.objectContaining({ safe: false }));
96
+ });
97
+ it('blocks import("fs/promises")', () => {
98
+ expect(validateCode('const fsp = await import("fs/promises")')).toEqual(expect.objectContaining({ safe: false }));
99
+ });
100
+ it('blocks import("node:fs/promises")', () => {
101
+ expect(validateCode('const fsp = await import("node:fs/promises")')).toEqual(expect.objectContaining({ safe: false }));
102
+ });
103
+ it('blocks fs.rmSync', () => {
104
+ expect(validateCode('fs.rmSync("/tmp/x", { recursive: true })')).toEqual(expect.objectContaining({ safe: false }));
105
+ });
106
+ it('blocks fs.writeFileSync', () => {
107
+ expect(validateCode('fs.writeFileSync("/tmp/x", "data")')).toEqual(expect.objectContaining({ safe: false }));
108
+ });
109
+ it('blocks fs.unlinkSync', () => {
110
+ expect(validateCode('fs.unlinkSync("/tmp/file")')).toEqual(expect.objectContaining({ safe: false }));
111
+ });
112
+ it('blocks async fs.writeFile', () => {
113
+ expect(validateCode('await fs. writeFile("/tmp/x", "data")')).toEqual(expect.objectContaining({ safe: false }));
114
+ });
115
+ });
116
+ // -----------------------------------------------------------------
117
+ // 6. Security blocklist — network modules
118
+ // -----------------------------------------------------------------
119
+ describe('Forge Security - Network', () => {
120
+ it('blocks require("net")', () => {
121
+ expect(validateCode('const net = require("net")')).toEqual(expect.objectContaining({ safe: false }));
122
+ });
123
+ it('blocks require("node:net")', () => {
124
+ expect(validateCode('const net = require("node:net")')).toEqual(expect.objectContaining({ safe: false }));
125
+ });
126
+ it('blocks import("node:dgram")', () => {
127
+ expect(validateCode('const dg = await import("node:dgram")')).toEqual(expect.objectContaining({ safe: false }));
128
+ });
129
+ });
130
+ // -----------------------------------------------------------------
131
+ // 7. Security blocklist — prototype pollution
132
+ // -----------------------------------------------------------------
133
+ describe('Forge Security - Prototype Pollution', () => {
134
+ it('blocks globalThis', () => {
135
+ expect(validateCode('globalThis.secret = 1')).toEqual(expect.objectContaining({ safe: false }));
136
+ });
137
+ it('blocks __proto__', () => {
138
+ expect(validateCode('obj.__proto__.polluted = true')).toEqual(expect.objectContaining({ safe: false }));
139
+ });
140
+ it('blocks constructor[', () => {
141
+ expect(validateCode('obj.constructor["prototype"]')).toEqual(expect.objectContaining({ safe: false }));
142
+ });
143
+ it('blocks Proxy()', () => {
144
+ expect(validateCode('new Proxy(target, handler)')).toEqual(expect.objectContaining({ safe: false }));
145
+ });
146
+ it('blocks Reflect', () => {
147
+ expect(validateCode('Reflect.apply(fn, null, [])')).toEqual(expect.objectContaining({ safe: false }));
148
+ });
149
+ it('blocks Object.setPrototypeOf', () => {
150
+ expect(validateCode('Object.setPrototypeOf(obj, null)')).toEqual(expect.objectContaining({ safe: false }));
151
+ });
152
+ it('blocks Object.defineProperty', () => {
153
+ expect(validateCode('Object.defineProperty(obj, "x", {value: 1})')).toEqual(expect.objectContaining({ safe: false }));
154
+ });
155
+ });
156
+ // -----------------------------------------------------------------
157
+ // 8. Security blocklist — dynamic import evasion
158
+ // -----------------------------------------------------------------
159
+ describe('Forge Security - Dynamic Import Evasion', () => {
160
+ it('blocks import with variable', () => {
161
+ expect(validateCode('const m = await import(moduleName)')).toEqual(expect.objectContaining({ safe: false }));
162
+ });
163
+ it('blocks require with variable', () => {
164
+ expect(validateCode('const m = require(moduleName)')).toEqual(expect.objectContaining({ safe: false }));
165
+ });
166
+ it('blocks import with template literal', () => {
167
+ expect(validateCode('const m = await import(`child_process`)')).toEqual(expect.objectContaining({ safe: false }));
168
+ });
169
+ it('blocks import with node: protocol template literal', () => {
170
+ expect(validateCode('const m = await import(`node:child_process`)')).toEqual(expect.objectContaining({ safe: false }));
171
+ });
172
+ });
173
+ // -----------------------------------------------------------------
174
+ // 9. Safe code that SHOULD pass
175
+ // -----------------------------------------------------------------
176
+ describe('Forge Security - Safe Code Allowed', () => {
177
+ it('allows simple string manipulation', () => {
178
+ expect(validateCode('return args.text.toUpperCase()')).toEqual({ safe: true });
179
+ });
180
+ it('allows math operations', () => {
181
+ expect(validateCode('return String(args.a + args.b)')).toEqual({ safe: true });
182
+ });
183
+ it('allows JSON parsing', () => {
184
+ expect(validateCode('return JSON.stringify(JSON.parse(args.json))')).toEqual({ safe: true });
185
+ });
186
+ it('allows array operations', () => {
187
+ expect(validateCode('return args.items.filter(x => x > 0).join(",")')).toEqual({ safe: true });
188
+ });
189
+ it('allows fetch (http client, not raw sockets)', () => {
190
+ expect(validateCode('const res = await fetch(args.url); return await res.text()')).toEqual({ safe: true });
191
+ });
192
+ it('allows Date operations', () => {
193
+ expect(validateCode('return new Date().toISOString()')).toEqual({ safe: true });
194
+ });
195
+ it('allows regex', () => {
196
+ expect(validateCode('return args.text.match(/\\d+/g)?.join(",") || "none"')).toEqual({ safe: true });
197
+ });
198
+ it('allows Map and Set', () => {
199
+ expect(validateCode('const s = new Set(args.items); return String(s.size)')).toEqual({ safe: true });
200
+ });
201
+ });
202
+ // -----------------------------------------------------------------
203
+ // 10. Input validation via forge_tool execute
204
+ // -----------------------------------------------------------------
205
+ describe('Forge Tool Input Validation', () => {
206
+ const forge = getTool('forge_tool');
207
+ it('rejects empty name', async () => {
208
+ const result = await forge.execute({ name: '', description: 'test', code: 'return "ok"', parameters: {} });
209
+ expect(result).toContain('Error');
210
+ });
211
+ it('rejects non-snake_case name', async () => {
212
+ const result = await forge.execute({ name: 'MyTool', description: 'test', code: 'return "ok"', parameters: {} });
213
+ expect(result).toContain('Error');
214
+ expect(result).toContain('snake_case');
215
+ });
216
+ it('rejects name starting with number', async () => {
217
+ const result = await forge.execute({ name: '1tool', description: 'test', code: 'return "ok"', parameters: {} });
218
+ expect(result).toContain('Error');
219
+ });
220
+ it('rejects name over 64 characters', async () => {
221
+ const longName = 'a'.repeat(65);
222
+ const result = await forge.execute({ name: longName, description: 'test', code: 'return "ok"', parameters: {} });
223
+ expect(result).toContain('Error');
224
+ expect(result).toContain('64');
225
+ });
226
+ it('rejects reserved tool names', async () => {
227
+ const result = await forge.execute({ name: 'bash', description: 'test', code: 'return "ok"', parameters: {} });
228
+ expect(result).toContain('Error');
229
+ expect(result).toContain('built-in');
230
+ });
231
+ it('rejects forge_tool overwrite', async () => {
232
+ const result = await forge.execute({ name: 'forge_tool', description: 'test', code: 'return "ok"', parameters: {} });
233
+ expect(result).toContain('Error');
234
+ expect(result).toContain('built-in');
235
+ });
236
+ it('rejects dangerous code', async () => {
237
+ const result = await forge.execute({ name: 'bad_tool', description: 'test', code: 'process.exit(1)', parameters: {} });
238
+ expect(result).toContain('Security error');
239
+ });
240
+ it('accepts valid safe tool', async () => {
241
+ const result = await forge.execute({
242
+ name: 'test_adder',
243
+ description: 'Adds two numbers',
244
+ code: 'return String(Number(args.a) + Number(args.b))',
245
+ parameters: { a: { type: 'number', description: 'First number', required: true }, b: { type: 'number', description: 'Second number', required: true } },
246
+ });
247
+ expect(result).toContain('forged successfully');
248
+ });
249
+ });
250
+ //# sourceMappingURL=forge.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"forge.test.js","sourceRoot":"","sources":["../../src/tools/forge.test.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export { ToolPipeline, createDefaultPipeline, permissionMiddleware, hookMiddleware, timeoutMiddleware, metricsMiddleware, truncationMiddleware, telemetryMiddleware, executionMiddleware, type ToolMiddleware, type ToolContext, type NextFunction, } from '../tool-pipeline.js';
1
+ export { ToolPipeline, createDefaultPipeline, permissionMiddleware, hookMiddleware, timeoutMiddleware, metricsMiddleware, truncationMiddleware, telemetryMiddleware, executionMiddleware, fallbackMiddleware, DEFAULT_FALLBACK_RULES, type ToolMiddleware, type ToolContext, type NextFunction, type FallbackRule, } from '../tool-pipeline.js';
2
2
  import { ToolPipeline, type ToolMiddleware } from '../tool-pipeline.js';
3
3
  export interface ToolDefinition {
4
4
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@
10
10
  // - Parallel startup imports
11
11
  // - Composable middleware pipeline (v3)
12
12
  // Re-export the middleware pipeline system
13
- export { ToolPipeline, createDefaultPipeline, permissionMiddleware, hookMiddleware, timeoutMiddleware, metricsMiddleware, truncationMiddleware, telemetryMiddleware, executionMiddleware, } from '../tool-pipeline.js';
13
+ export { ToolPipeline, createDefaultPipeline, permissionMiddleware, hookMiddleware, timeoutMiddleware, metricsMiddleware, truncationMiddleware, telemetryMiddleware, executionMiddleware, fallbackMiddleware, DEFAULT_FALLBACK_RULES, } from '../tool-pipeline.js';
14
14
  import { ToolPipeline, executionMiddleware } from '../tool-pipeline.js';
15
15
  const registry = new Map();
16
16
  const metrics = new Map();
@@ -108,7 +108,15 @@ export function getToolMetrics(toolName) {
108
108
  export async function executeTool(call) {
109
109
  const tool = registry.get(call.name);
110
110
  if (!tool) {
111
- return { tool_call_id: call.id, result: `Unknown tool: ${call.name}`, error: true, duration_ms: 0 };
111
+ // Smart error: guide the AI toward discovering and installing the tool via MCP
112
+ const suggestion = `Unknown tool: ${call.name}. ` +
113
+ `This tool is not currently registered, but you can discover and install it:\n` +
114
+ `1. Use mcp_search to find an MCP server that provides "${call.name}"\n` +
115
+ `2. Use mcp_install to install the server\n` +
116
+ `3. Use mcp_connect to connect to the server\n` +
117
+ `4. Use mcp_call to invoke the tool through the connected server\n` +
118
+ `If no MCP server exists, consider using forge_tool to create it at runtime.`;
119
+ return { tool_call_id: call.id, result: suggestion, error: true, duration_ms: 0 };
112
120
  }
113
121
  const timeout = tool.timeout ?? DEFAULT_TIMEOUT;
114
122
  const maxResult = tool.maxResultSize ?? DEFAULT_MAX_RESULT;
@@ -226,6 +234,7 @@ const LAZY_MODULE_IMPORTS = [
226
234
  { path: '../plugin-sdk.js', registerFn: 'registerPluginSDKTools' },
227
235
  { path: './training.js', registerFn: 'registerTrainingTools' },
228
236
  { path: './social.js', registerFn: 'registerSocialTools' },
237
+ { path: './forge.js', registerFn: 'registerForgeTools' },
229
238
  ];
230
239
  /** Track whether lazy tools have been registered */
231
240
  let lazyToolsRegistered = false;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,uEAAuE;AACvE,4CAA4C;AAC5C,EAAE;AACF,uBAAuB;AACvB,oEAAoE;AACpE,mDAAmD;AACnD,iCAAiC;AACjC,6BAA6B;AAC7B,+BAA+B;AAC/B,0CAA0C;AAE1C,2CAA2C;AAC3C,OAAO,EACL,YAAY,EACZ,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,kBAAkB,EAClB,sBAAsB,GAKvB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAuB,MAAM,qBAAqB,CAAA;AA8C5F,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA0B,CAAA;AAClD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAuB,CAAA;AAE9C,MAAM,eAAe,GAAG,OAAO,CAAA,CAAI,YAAY;AAC/C,MAAM,kBAAkB,GAAG,MAAM,CAAA,CAAE,OAAO;AAE1C,gCAAgC;AAChC,MAAM,WAAW,GAA2B;IAC1C,IAAI,EAAE,CAAC;IACP,GAAG,EAAE,CAAC;IACN,MAAM,EAAE,CAAC;IACT,UAAU,EAAE,CAAC;CACd,CAAA;AAED,MAAM,UAAU,YAAY,CAAC,IAAoB;IAC/C,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;AAC/B,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,IAAY;IAClC,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;AAC3B,CAAC;AAED,MAAM,UAAU,WAAW;IACzB,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;AACtC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACxC,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;QAC9C,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC1C,OAAO,SAAS,IAAI,SAAS,CAAA;IAC/B,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,iEAAiE;AACjE,MAAM,UAAU,wBAAwB,CAAC,IAAY;IAKnD,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QACnC,MAAM,UAAU,GAA4B,EAAE,CAAA;QAC9C,MAAM,QAAQ,GAAa,EAAE,CAAA;QAC7B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;YACxD,MAAM,IAAI,GAA4B,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAA;YAC1F,0CAA0C;YAC1C,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC3B,IAAI,CAAC,KAAK,GAAI,KAAiC,CAAC,KAAK,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAA;YAC7E,CAAC;YACD,gDAAgD;YAChD,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC5B,IAAI,CAAC,UAAU,GAAI,KAAiC,CAAC,UAAU,IAAI,EAAE,CAAA;gBACrE,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAA;YAClC,CAAC;YACD,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,CAAA;YACtB,IAAI,KAAK,CAAC,QAAQ;gBAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACxC,CAAC;QACD,OAAO;YACL,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,YAAY,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,UAAU,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;SACpG,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,2EAA2E;AAC3E,SAAS,cAAc,CAAC,MAAc,EAAE,OAAe;IACrD,IAAI,MAAM,CAAC,MAAM,IAAI,OAAO;QAAE,OAAO,MAAM,CAAA;IAC3C,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;IAC1C,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,GAAG,OAAO,CAAA;IACzC,OAAO,GAAG,SAAS,sBAAsB,SAAS,iEAAiE,CAAA;AACrH,CAAC;AAED,0CAA0C;AAC1C,SAAS,aAAa,CAAC,IAAY,EAAE,UAAkB,EAAE,OAAgB;IACvE,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;IAClC,IAAI,QAAQ,EAAE,CAAC;QACb,QAAQ,CAAC,KAAK,EAAE,CAAA;QAChB,IAAI,OAAO;YAAE,QAAQ,CAAC,MAAM,EAAE,CAAA;QAC9B,QAAQ,CAAC,eAAe,IAAI,UAAU,CAAA;QACtC,QAAQ,CAAC,aAAa,GAAG,QAAQ,CAAC,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAA;QAClE,QAAQ,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IAChD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE;YAChB,IAAI;YACJ,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACvB,eAAe,EAAE,UAAU;YAC3B,aAAa,EAAE,UAAU;YACzB,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACrC,CAAC,CAAA;IACJ,CAAC;AACH,CAAC;AAED,mDAAmD;AACnD,MAAM,UAAU,cAAc,CAAC,QAAiB;IAC9C,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC/B,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IACrB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAA;AACvE,CAAC;AAED,qEAAqE;AACrE,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAc;IAC9C,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACpC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,+EAA+E;QAC/E,MAAM,UAAU,GAAG,iBAAiB,IAAI,CAAC,IAAI,IAAI;YAC/C,+EAA+E;YAC/E,0DAA0D,IAAI,CAAC,IAAI,KAAK;YACxE,4CAA4C;YAC5C,+CAA+C;YAC/C,mEAAmE;YACnE,6EAA6E,CAAA;QAC/E,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,EAAE,CAAA;IACnF,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,eAAe,CAAA;IAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,IAAI,kBAAkB,CAAA;IAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IAE5B,IAAI,CAAC;QACH,6EAA6E;QAC7E,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;QACxC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,OAAO,CAAC,CAAA;QAC3D,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;gBAChC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC;gBAC5B,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;oBAC/B,UAAU,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAC/C,MAAM,CAAC,IAAI,KAAK,CAAC,SAAS,IAAI,CAAC,IAAI,qBAAqB,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,CAC5E,CAAA;gBACH,CAAC,CAAC;aACH,CAAC,CAAA;YAEF,YAAY,CAAC,KAAK,CAAC,CAAA;YACnB,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;YACzC,MAAM,SAAS,GAAG,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;YACnD,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,CAAA;YAC3C,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,CAAA;QAC9E,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,KAAK,CAAC,CAAA;QACrB,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;QACzC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,CAAA;QAC1C,OAAO;YACL,YAAY,EAAE,IAAI,CAAC,EAAE;YACrB,MAAM,EAAE,eAAe,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;YACzE,KAAK,EAAE,IAAI;YACX,WAAW,EAAE,UAAU;SACxB,CAAA;IACH,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAA2C;IAC5E,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAA;IACnC,kCAAkC;IAClC,IAAI,OAAO,EAAE,UAAU,EAAE,CAAC;QACxB,KAAK,MAAM,EAAE,IAAI,OAAO,CAAC,UAAU;YAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACvD,CAAC;IACD,6BAA6B;IAC7B,QAAQ,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;QACpD,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QACrE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA;IACnF,CAAC,CAAC,CAAC,CAAA;IACH,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,8EAA8E;AAC9E,yBAAyB;AACzB,EAAE;AACF,yEAAyE;AACzE,8EAA8E;AAC9E,qEAAqE;AACrE,8EAA8E;AAE9E,yFAAyF;AACzF,MAAM,mBAAmB,GAAgD;IACvE,EAAE,IAAI,EAAE,YAAY,EAAG,UAAU,EAAE,mBAAmB,EAAE;IACxD,EAAE,IAAI,EAAE,WAAW,EAAI,UAAU,EAAE,mBAAmB,EAAE;IACxD,EAAE,IAAI,EAAE,UAAU,EAAK,UAAU,EAAE,kBAAkB,EAAE;IACvD,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,qBAAqB,EAAE;IAC1D,EAAE,IAAI,EAAE,YAAY,EAAG,UAAU,EAAE,oBAAoB,EAAE;CAC1D,CAAA;AAED,4DAA4D;AAC5D,MAAM,mBAAmB,GAAgD;IACvE,EAAE,IAAI,EAAE,aAAa,EAAW,UAAU,EAAE,qBAAqB,EAAE;IACnE,EAAE,IAAI,EAAE,aAAa,EAAW,UAAU,EAAE,qBAAqB,EAAE;IACnE,EAAE,IAAI,EAAE,eAAe,EAAS,UAAU,EAAE,uBAAuB,EAAE;IACrE,EAAE,IAAI,EAAE,iBAAiB,EAAO,UAAU,EAAE,wBAAwB,EAAE;IACtE,EAAE,IAAI,EAAE,YAAY,EAAY,UAAU,EAAE,mBAAmB,EAAE;IACjE,EAAE,IAAI,EAAE,eAAe,EAAS,UAAU,EAAE,uBAAuB,EAAE;IACrE,EAAE,IAAI,EAAE,iBAAiB,EAAO,UAAU,EAAE,yBAAyB,EAAE;IACvE,EAAE,IAAI,EAAE,cAAc,EAAU,UAAU,EAAE,sBAAsB,EAAE;IACpE,EAAE,IAAI,EAAE,mBAAmB,EAAK,UAAU,EAAE,0BAA0B,EAAE;IACxE,EAAE,IAAI,EAAE,eAAe,EAAS,UAAU,EAAE,uBAAuB,EAAE;IACrE,EAAE,IAAI,EAAE,eAAe,EAAS,UAAU,EAAE,uBAAuB,EAAE;IACrE,EAAE,IAAI,EAAE,iBAAiB,EAAO,UAAU,EAAE,wBAAwB,EAAE;IACtE,EAAE,IAAI,EAAE,cAAc,EAAU,UAAU,EAAE,sBAAsB,EAAE;IACpE,EAAE,IAAI,EAAE,mBAAmB,EAAK,UAAU,EAAE,qBAAqB,EAAE;IACnE,EAAE,IAAI,EAAE,cAAc,EAAU,UAAU,EAAE,sBAAsB,EAAE;IACpE,EAAE,IAAI,EAAE,kBAAkB,EAAM,UAAU,EAAE,kBAAkB,EAAE;IAChE,EAAE,IAAI,EAAE,gBAAgB,EAAQ,UAAU,EAAE,kBAAkB,EAAE;IAChE,EAAE,IAAI,EAAE,mBAAmB,EAAK,UAAU,EAAE,wBAAwB,EAAE;IACtE,EAAE,IAAI,EAAE,oBAAoB,EAAI,UAAU,EAAE,0BAA0B,EAAE;IACxE,EAAE,IAAI,EAAE,kBAAkB,EAAM,UAAU,EAAE,yBAAyB,EAAE;IACvE,EAAE,IAAI,EAAE,sBAAsB,EAAE,UAAU,EAAE,4BAA4B,EAAE;IAC1E,EAAE,IAAI,EAAE,gBAAgB,EAAQ,UAAU,EAAE,uBAAuB,EAAE;IACrE,EAAE,IAAI,EAAE,iBAAiB,EAAO,UAAU,EAAE,wBAAwB,EAAE;IACtE,EAAE,IAAI,EAAE,sBAAsB,EAAE,UAAU,EAAE,6BAA6B,EAAE;IAC3E,EAAE,IAAI,EAAE,kBAAkB,EAAM,UAAU,EAAE,yBAAyB,EAAE;IACvE,EAAE,IAAI,EAAE,eAAe,EAAS,UAAU,EAAE,uBAAuB,EAAE;IACrE,EAAE,IAAI,EAAE,qBAAqB,EAAG,UAAU,EAAE,sBAAsB,EAAE;IACpE,EAAE,IAAI,EAAE,qBAAqB,EAAG,UAAU,EAAE,sBAAsB,EAAE;IACpE,EAAE,IAAI,EAAE,eAAe,EAAS,UAAU,EAAE,uBAAuB,EAAE;IACrE,EAAE,IAAI,EAAE,iBAAiB,EAAO,UAAU,EAAE,wBAAwB,EAAE;IACtE,EAAE,IAAI,EAAE,UAAU,EAAc,UAAU,EAAE,kBAAkB,EAAE;IAChE,EAAE,IAAI,EAAE,cAAc,EAAW,UAAU,EAAE,sBAAsB,EAAE;IACrE,EAAE,IAAI,EAAE,YAAY,EAAY,UAAU,EAAE,oBAAoB,EAAE;IAClE,EAAE,IAAI,EAAE,gBAAgB,EAAQ,UAAU,EAAE,uBAAuB,EAAE;IACrE,EAAE,IAAI,EAAE,iBAAiB,EAAO,UAAU,EAAE,yBAAyB,EAAE;IACvE,EAAE,IAAI,EAAE,eAAe,EAAS,UAAU,EAAE,uBAAuB,EAAE;IACrE,EAAE,IAAI,EAAE,mBAAmB,EAAK,UAAU,EAAE,0BAA0B,EAAE;IACxE,EAAE,IAAI,EAAE,oBAAoB,EAAI,UAAU,EAAE,2BAA2B,EAAE;IACzE,EAAE,IAAI,EAAE,iBAAiB,EAAO,UAAU,EAAE,uBAAuB,EAAE;IACrE,EAAE,IAAI,EAAE,aAAa,EAAW,UAAU,EAAE,qBAAqB,EAAE;IACnE,EAAE,IAAI,EAAE,sBAAsB,EAAE,UAAU,EAAE,6BAA6B,EAAE;IAC3E,EAAE,IAAI,EAAE,eAAe,EAAS,UAAU,EAAE,uBAAuB,EAAE;IACrE,EAAE,IAAI,EAAE,YAAY,EAAY,UAAU,EAAE,mBAAmB,EAAE;IACjE,EAAE,IAAI,EAAE,kBAAkB,EAAM,UAAU,EAAE,wBAAwB,EAAE;IACtE,EAAE,IAAI,EAAE,eAAe,EAAS,UAAU,EAAE,uBAAuB,EAAE;IACrE,EAAE,IAAI,EAAE,aAAa,EAAW,UAAU,EAAE,qBAAqB,EAAE;IACnE,EAAE,IAAI,EAAE,YAAY,EAAY,UAAU,EAAE,oBAAoB,EAAE;CACnE,CAAA;AAED,oDAAoD;AACpD,IAAI,mBAAmB,GAAG,KAAK,CAAA;AAC/B,IAAI,gBAAgB,GAA2B,IAAI,CAAA;AAEnD,0FAA0F;AAC1F,KAAK,UAAU,iBAAiB,CAAC,GAAyC;IACxE,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACvC,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QAC3C,IAAI,OAAO,UAAU,KAAK,UAAU,EAAE,CAAC;YACrC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAA;YAC5B,UAAU,EAAE,CAAA;YACZ,OAAO,QAAQ,CAAC,IAAI,GAAG,MAAM,CAAA;QAC/B,CAAC;QACD,OAAO,CAAC,CAAA;IACV,CAAC;IAAC,MAAM,CAAC;QACP,gDAAgD;QAChD,OAAO,CAAC,CAAA;IACV,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAgC;IACtE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAA;IAC5E,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;AAC9C,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAgC;IACtE,IAAI,mBAAmB;QAAE,OAAO,CAAC,CAAA;IACjC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAA;IAC5E,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;IAEnD,2DAA2D;IAC3D,IAAI,IAAI,EAAE,WAAW,EAAE,CAAC;QACtB,IAAI,CAAC;YACH,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAA;YAC/D,qBAAqB,EAAE,CAAA;QACzB,CAAC;QAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC;IAC5B,CAAC;IAED,qCAAqC;IACrC,IAAI,CAAC;QACH,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAA;QACrD,MAAM,WAAW,CAAC,KAAK,CAAC,CAAA;IAC1B,CAAC;IAAC,MAAM,CAAC,CAAC,cAAc,CAAC,CAAC;IAE1B,mBAAmB,GAAG,IAAI,CAAA;IAC1B,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,IAAgC;IAC1E,IAAI,mBAAmB;QAAE,OAAM;IAC/B,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,gBAAgB,CAAA;QACtB,OAAM;IACR,CAAC;IACD,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAA;AAC/B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,yBAAyB,CAAC,IAAgC;IACxE,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,gBAAgB,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAC5C,CAAC;IACD,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAAgC;IACrE,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAC7B,MAAM,iBAAiB,CAAC,IAAI,CAAC,CAAA;AAC/B,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@kernel.chat/kbot",
3
- "version": "3.3.2",
4
- "description": "Universal AI agent framework for your terminal. 22 specialist agents, 284 tools, 20 providers. Game dev tools (8 engines, ECS, physics, netcode, levels, particles, shaders, sprites). Programmatic SDK, Bayesian skill routing, checkpointing & resume, middleware pipeline, structured streaming, lazy tool loading. Embedded llama.cpp engine, LoRA/QLoRA fine-tuning, deploy tools, MCP marketplace, team mode, plugin SDK. Self-evolving, learns your patterns.",
3
+ "version": "3.4.0",
4
+ "description": "Universal AI agent framework for your terminal. 22 specialist agents, 285 tools, 20 providers. Limitless Execution: cost-aware model routing, agent-routed plans, tool fallback chains, runtime tool forging, smart tool discovery. Game dev tools (8 engines, ECS, physics, netcode, levels, particles, shaders, sprites). Programmatic SDK, Bayesian skill routing, checkpointing & resume, middleware pipeline, structured streaming, lazy tool loading. Embedded llama.cpp engine, LoRA/QLoRA fine-tuning, deploy tools, MCP marketplace, team mode, plugin SDK. Self-evolving, learns your patterns.",
5
5
  "type": "module",
6
6
  "repository": {
7
7
  "type": "git",