@kernel.chat/kbot 3.99.35 → 4.0.1
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/README.md +15 -6
- package/dist/agent-protocol.js +5 -0
- package/dist/cache-warmth.d.ts +25 -0
- package/dist/cache-warmth.js +131 -0
- package/dist/cli.js +6 -6
- package/dist/plugin-sdk.d.ts +23 -2
- package/dist/plugin-sdk.js +118 -8
- package/dist/plugins.js +15 -1
- package/dist/streaming.js +18 -0
- package/dist/tools/browser.js +1 -0
- package/dist/tools/computer.js +6 -0
- package/dist/tools/containers.js +1 -0
- package/dist/tools/creative.js +5 -0
- package/dist/tools/deploy.js +1 -0
- package/dist/tools/emergent.js +1 -0
- package/dist/tools/gamedev.js +16 -0
- package/dist/tools/hacker-toolkit.js +6 -0
- package/dist/tools/index.d.ts +2 -0
- package/dist/tools/index.js +16 -80
- package/dist/tools/kbot-browser.js +1 -0
- package/dist/tools/quality.js +1 -0
- package/dist/tools/redblue.js +4 -0
- package/dist/tools/security-brain.js +3 -0
- package/dist/tools/security-hunt.js +1 -0
- package/dist/tools/security.js +6 -0
- package/dist/tools/test-runner.js +1 -0
- package/dist/tools/threat-intel.js +2 -0
- package/dist/ui.js +2 -2
- package/package.json +2 -2
package/dist/tools/creative.js
CHANGED
|
@@ -683,6 +683,7 @@ function evolveDesign(source, mutationIndex) {
|
|
|
683
683
|
export function registerCreativeTools() {
|
|
684
684
|
registerTool({
|
|
685
685
|
name: 'generate_art',
|
|
686
|
+
deprecated: true,
|
|
686
687
|
description: 'Generate a self-contained p5.js sketch as an HTML file from a text description. Creates generative art that can be opened directly in a browser.',
|
|
687
688
|
parameters: {
|
|
688
689
|
description: { type: 'string', description: 'Text description of the desired artwork (e.g., "flowing ocean waves at sunset")', required: true },
|
|
@@ -706,6 +707,7 @@ export function registerCreativeTools() {
|
|
|
706
707
|
});
|
|
707
708
|
registerTool({
|
|
708
709
|
name: 'generate_shader',
|
|
710
|
+
deprecated: true,
|
|
709
711
|
description: 'Generate a Shadertoy-compatible GLSL fragment shader from a text description. Creates animated procedural graphics using noise, raymarching, voronoi, or kaleidoscopic techniques.',
|
|
710
712
|
parameters: {
|
|
711
713
|
description: { type: 'string', description: 'Text description of the desired shader effect (e.g., "molten lava flowing through cracks")', required: true },
|
|
@@ -723,6 +725,7 @@ export function registerCreativeTools() {
|
|
|
723
725
|
});
|
|
724
726
|
registerTool({
|
|
725
727
|
name: 'generate_music_pattern',
|
|
728
|
+
deprecated: true,
|
|
726
729
|
description: 'Generate a music pattern as Sonic Pi code or a MIDI-like JSON structure. Creates melodies, bass lines, and drum patterns based on genre and description.',
|
|
727
730
|
parameters: {
|
|
728
731
|
description: { type: 'string', description: 'Text description of the desired music (e.g., "upbeat jazz with walking bass")', required: true },
|
|
@@ -748,6 +751,7 @@ export function registerCreativeTools() {
|
|
|
748
751
|
});
|
|
749
752
|
registerTool({
|
|
750
753
|
name: 'generate_svg',
|
|
754
|
+
deprecated: true,
|
|
751
755
|
description: 'Generate algorithmic SVG art from a text description. Creates generative patterns including concentric circles, mesh networks, Mondrian grids, spirographs, or wave patterns.',
|
|
752
756
|
parameters: {
|
|
753
757
|
description: { type: 'string', description: 'Text description of the desired SVG artwork', required: true },
|
|
@@ -772,6 +776,7 @@ export function registerCreativeTools() {
|
|
|
772
776
|
});
|
|
773
777
|
registerTool({
|
|
774
778
|
name: 'evolve_design',
|
|
779
|
+
deprecated: true,
|
|
775
780
|
description: 'Take an existing design file (HTML, SVG, GLSL, CSS, etc.) and generate N mutations by tweaking numeric values, colors, and structure. Outputs each variant as a separate file. Useful for exploring design spaces.',
|
|
776
781
|
parameters: {
|
|
777
782
|
source_path: { type: 'string', description: 'Path to the source design file to mutate', required: true },
|
package/dist/tools/deploy.js
CHANGED
|
@@ -307,6 +307,7 @@ export function registerDeployTools() {
|
|
|
307
307
|
// ── deploy ─────────────────────────────────────────────────────────
|
|
308
308
|
registerTool({
|
|
309
309
|
name: 'deploy',
|
|
310
|
+
deprecated: true,
|
|
310
311
|
description: 'Deploy the current project. Auto-detects platform from config files (vercel.json, netlify.toml, wrangler.toml, fly.toml, railway.json). Supports Vercel, Netlify, Cloudflare Workers/Pages, Fly.io, and Railway.',
|
|
311
312
|
parameters: {
|
|
312
313
|
path: { type: 'string', description: 'Project directory (default: cwd)' },
|
package/dist/tools/emergent.js
CHANGED
|
@@ -968,6 +968,7 @@ export function registerEmergentTools() {
|
|
|
968
968
|
// ══════════════════════════════════════════════════════════════════════════
|
|
969
969
|
registerTool({
|
|
970
970
|
name: 'question',
|
|
971
|
+
deprecated: true,
|
|
971
972
|
description: 'Generate the most important unanswered questions based on kbot\'s knowledge graph and memory. Not questions the user asked — questions that SHOULD be asked based on what is known and what is missing.',
|
|
972
973
|
parameters: {
|
|
973
974
|
domain: { type: 'string', description: 'Optional domain focus (e.g., "biology", "physics", "social")' },
|
package/dist/tools/gamedev.js
CHANGED
|
@@ -186,6 +186,7 @@ export function registerGamedevTools() {
|
|
|
186
186
|
};
|
|
187
187
|
registerTool({
|
|
188
188
|
name: 'scaffold_game',
|
|
189
|
+
deprecated: true,
|
|
189
190
|
description: 'Generate project scaffolding for a game engine. Supports godot, unity, unreal, bevy, phaser, three (Three.js), playcanvas, and defold. Writes real config files, entry points, and gitignore.',
|
|
190
191
|
parameters: {
|
|
191
192
|
engine: { type: 'string', description: 'Game engine: godot, unity, unreal, bevy, phaser, three, playcanvas, defold', required: true },
|
|
@@ -359,6 +360,7 @@ export function registerGamedevTools() {
|
|
|
359
360
|
};
|
|
360
361
|
registerTool({
|
|
361
362
|
name: 'game_config',
|
|
363
|
+
deprecated: true,
|
|
362
364
|
description: 'Generate or modify game engine config files. Auto-detects engine from project directory. Supports project, build, input, physics, rendering, and audio config types.',
|
|
363
365
|
parameters: {
|
|
364
366
|
engine: { type: 'string', description: 'Engine: godot, unity, unreal, bevy, phaser, three, playcanvas, defold (auto-detected if path provided)' },
|
|
@@ -438,6 +440,7 @@ export function registerGamedevTools() {
|
|
|
438
440
|
];
|
|
439
441
|
registerTool({
|
|
440
442
|
name: 'shader_debug',
|
|
443
|
+
deprecated: true,
|
|
441
444
|
description: 'Static analysis of shader code for performance issues, errors, and optimization opportunities. Supports GLSL, HLSL, and WGSL. Reports branching, precision, overdraw, math optimization, and texture access patterns.',
|
|
442
445
|
parameters: {
|
|
443
446
|
source: { type: 'string', description: 'Shader source code or file path', required: true },
|
|
@@ -906,6 +909,7 @@ void fragment() {
|
|
|
906
909
|
};
|
|
907
910
|
registerTool({
|
|
908
911
|
name: 'material_graph',
|
|
912
|
+
deprecated: true,
|
|
909
913
|
description: 'Generate material/shader code for game engines. Supports PBR, toon, water, foliage, glass, and emissive materials for Three.js, Godot, and Unity.',
|
|
910
914
|
parameters: {
|
|
911
915
|
material_type: { type: 'string', description: 'Material type: pbr, toon, water, foliage, glass, emissive', required: true },
|
|
@@ -1264,6 +1268,7 @@ void fragment() {
|
|
|
1264
1268
|
}
|
|
1265
1269
|
registerTool({
|
|
1266
1270
|
name: 'mesh_generate',
|
|
1271
|
+
deprecated: true,
|
|
1267
1272
|
description: 'Procedural OBJ mesh generation. Supports plane, cube, sphere, cylinder, torus, heightmap, and terrain shapes with configurable parameters. Outputs valid OBJ with vertices, normals, and UVs.',
|
|
1268
1273
|
parameters: {
|
|
1269
1274
|
shape: { type: 'string', description: 'Shape: plane, cube, sphere, cylinder, torus, heightmap, terrain', required: true },
|
|
@@ -1298,6 +1303,7 @@ void fragment() {
|
|
|
1298
1303
|
// ── Tool 6: Sprite Atlas Packer ────────────────────────────────────
|
|
1299
1304
|
registerTool({
|
|
1300
1305
|
name: 'sprite_pack',
|
|
1306
|
+
deprecated: true,
|
|
1301
1307
|
description: 'Pack multiple sprite images into a single texture atlas with metadata. Uses maxrects bin-packing for optimal layout. Outputs atlas image via ImageMagick and JSON/engine-specific metadata.',
|
|
1302
1308
|
parameters: {
|
|
1303
1309
|
input_dir: { type: 'string', description: 'Directory containing sprite images (png/jpg/webp)', required: true },
|
|
@@ -1610,6 +1616,7 @@ void fragment() {
|
|
|
1610
1616
|
// ── Tool 7: Physics Setup Generator ──────────────────────────────────
|
|
1611
1617
|
registerTool({
|
|
1612
1618
|
name: 'physics_setup',
|
|
1619
|
+
deprecated: true,
|
|
1613
1620
|
description: 'Generate complete physics configuration code for game engines. Supports rigidbody, softbody, ragdoll (full humanoid skeleton), vehicle (suspension/wheels/steering), cloth, and joint systems across 7 physics engines.',
|
|
1614
1621
|
parameters: {
|
|
1615
1622
|
type: { type: 'string', description: 'Physics type: rigidbody, softbody, ragdoll, vehicle, cloth, joints', required: true },
|
|
@@ -2902,6 +2909,7 @@ const JOINT_CONFIG = ${JSON.stringify({
|
|
|
2902
2909
|
// ── Tool 8: Particle System Generator ────────────────────────────────
|
|
2903
2910
|
registerTool({
|
|
2904
2911
|
name: 'particle_system',
|
|
2912
|
+
deprecated: true,
|
|
2905
2913
|
description: 'Generate engine-specific particle system code for common visual effects. Supports fire, smoke, rain, snow, sparks, magic, explosion, dust, bubbles, leaves, and confetti effects across 6 game engines.',
|
|
2906
2914
|
parameters: {
|
|
2907
2915
|
effect: { type: 'string', description: 'Effect type: fire, smoke, rain, snow, sparks, magic, explosion, dust, bubbles, leaves, confetti', required: true },
|
|
@@ -3612,6 +3620,7 @@ ${effect === 'fire' || effect === 'smoke' ? ` // Grow over lifetime
|
|
|
3612
3620
|
// ── Tool 9: Procedural Level Generator ───────────────────────────────
|
|
3613
3621
|
registerTool({
|
|
3614
3622
|
name: 'level_generate',
|
|
3623
|
+
deprecated: true,
|
|
3615
3624
|
description: 'Generate procedural game levels with BSP dungeon, platformer terrain, maze, overworld, or arena layouts. Supports seeded PRNG for reproducibility and outputs in JSON, Tiled, or ASCII formats.',
|
|
3616
3625
|
parameters: {
|
|
3617
3626
|
type: { type: 'string', description: 'Level type: dungeon, platformer, overworld, maze, arena', required: true },
|
|
@@ -4173,6 +4182,7 @@ ${effect === 'fire' || effect === 'smoke' ? ` // Grow over lifetime
|
|
|
4173
4182
|
// ── Tool 10: Tilemap Auto-Tiling Generator ──────────────────────────
|
|
4174
4183
|
registerTool({
|
|
4175
4184
|
name: 'tilemap_generate',
|
|
4185
|
+
deprecated: true,
|
|
4176
4186
|
description: 'Generate bitmask-based auto-tiling rules and tilemap data. Supports blob 47-tile, Wang 16-tile, and simple 4-tile tilesets with terrain definitions for grass, stone, water, sand, snow, and lava.',
|
|
4177
4187
|
parameters: {
|
|
4178
4188
|
tileset_type: { type: 'string', description: 'Tileset type: blob_47, wang_16, simple_4', required: true },
|
|
@@ -4553,6 +4563,7 @@ tile_${i}/terrain_peering/left = ${cardW ? 0 : -1}`;
|
|
|
4553
4563
|
// ── Tool 11: Navigation Mesh Configuration ──────────────────────────
|
|
4554
4564
|
registerTool({
|
|
4555
4565
|
name: 'navmesh_config',
|
|
4566
|
+
deprecated: true,
|
|
4556
4567
|
description: 'Generate engine-specific navigation mesh configuration and pathfinding helper code. Supports humanoid, vehicle, flying, and small creature agent types with appropriate defaults across 5 navigation systems.',
|
|
4557
4568
|
parameters: {
|
|
4558
4569
|
engine: { type: 'string', description: 'Navigation engine: godot, unity, unreal, recast, three (default: recast)' },
|
|
@@ -5662,6 +5673,7 @@ export class NavigationSystem {
|
|
|
5662
5673
|
// ── Tool 12: game_audio ──────────────────────────────────────────────
|
|
5663
5674
|
registerTool({
|
|
5664
5675
|
name: 'game_audio',
|
|
5676
|
+
deprecated: true,
|
|
5665
5677
|
description: 'Generate game audio systems: spatial 3D audio, adaptive music layers, sound banks, Howler.js setup, or Web Audio API graphs. Produces complete, working audio code for any game engine.',
|
|
5666
5678
|
parameters: {
|
|
5667
5679
|
system: { type: 'string', description: 'Audio system type: spatial, music_layers, sound_bank, howler, web_audio', required: true },
|
|
@@ -7122,6 +7134,7 @@ export class AudioEngine {
|
|
|
7122
7134
|
// ── Tool 13: netcode_scaffold ───────────────────────────────────────
|
|
7123
7135
|
registerTool({
|
|
7124
7136
|
name: 'netcode_scaffold',
|
|
7137
|
+
deprecated: true,
|
|
7125
7138
|
description: 'Generate multiplayer netcode scaffolding: server, client, and shared types. Supports WebSocket/WebRTC transports with Colyseus, Socket.IO, Geckos.io, Nakama, or raw implementations. Includes lobby, matchmaking, state sync, input prediction, chat, and reconnection features.',
|
|
7126
7139
|
parameters: {
|
|
7127
7140
|
architecture: { type: 'string', description: 'Network architecture: client_server, peer_to_peer, relay', required: true },
|
|
@@ -8542,6 +8555,7 @@ ${hasReconnect ? ' if (this.reconnectTimer) clearTimeout(this.reconnectTimer)
|
|
|
8542
8555
|
// ── Tool 14: game_build ─────────────────────────────────────────────
|
|
8543
8556
|
registerTool({
|
|
8544
8557
|
name: 'game_build',
|
|
8558
|
+
deprecated: true,
|
|
8545
8559
|
description: 'Generate CI/CD pipelines and build configurations for game distribution. Supports Steam, itch.io, web, iOS, and Android targets with GitHub Actions or GitLab CI.',
|
|
8546
8560
|
parameters: {
|
|
8547
8561
|
engine: { type: 'string', description: 'Game engine or framework (e.g., godot, unity, unreal, three, phaser, bevy, web)' },
|
|
@@ -9044,6 +9058,7 @@ export default defineConfig({
|
|
|
9044
9058
|
// ── Tool 15: game_test ──────────────────────────────────────────────
|
|
9045
9059
|
registerTool({
|
|
9046
9060
|
name: 'game_test',
|
|
9061
|
+
deprecated: true,
|
|
9047
9062
|
description: 'Generate game testing and profiling utilities: FPS profiler, memory tracker, input recorder/replayer, screenshot regression tests, and performance budgets with runtime validation.',
|
|
9048
9063
|
parameters: {
|
|
9049
9064
|
test_type: { type: 'string', description: 'Test type: fps_profiler, memory_tracker, input_recorder, screenshot_test, performance_budget', required: true },
|
|
@@ -10352,6 +10367,7 @@ export class PerformanceBudget {
|
|
|
10352
10367
|
// ── Tool 16: ecs_generate ───────────────────────────────────────────
|
|
10353
10368
|
registerTool({
|
|
10354
10369
|
name: 'ecs_generate',
|
|
10370
|
+
deprecated: true,
|
|
10355
10371
|
description: 'Generate Entity Component System (ECS) code: components, systems, and entity archetypes. Produces idiomatic code for Bevy (Rust), bitecs (TypeScript), Unity DOTS (C#), miniplex (TypeScript), or ecsy (TypeScript).',
|
|
10356
10372
|
parameters: {
|
|
10357
10373
|
framework: { type: 'string', description: 'ECS framework: bevy, unity_dots, bitecs, miniplex, ecsy', required: true },
|
|
@@ -1287,6 +1287,7 @@ export function registerHackerToolkitTools() {
|
|
|
1287
1287
|
// ─────────────────────────────────────────────────────────────────────────────
|
|
1288
1288
|
registerTool({
|
|
1289
1289
|
name: 'jwt_analyze',
|
|
1290
|
+
deprecated: true,
|
|
1290
1291
|
description: 'Analyze JWT tokens. Decode header/payload/signature, verify signatures with a secret, test for algorithm confusion (alg:none), and try common weak secrets.',
|
|
1291
1292
|
parameters: {
|
|
1292
1293
|
token: { type: 'string', description: 'JWT token to analyze', required: true },
|
|
@@ -1653,6 +1654,7 @@ export function registerHackerToolkitTools() {
|
|
|
1653
1654
|
// ─────────────────────────────────────────────────────────────────────────────
|
|
1654
1655
|
registerTool({
|
|
1655
1656
|
name: 'cors_check',
|
|
1657
|
+
deprecated: true,
|
|
1656
1658
|
description: 'Detect CORS misconfigurations. Tests for arbitrary origin reflection, null origin acceptance, credentials with wildcard, and subdomain wildcard matching.',
|
|
1657
1659
|
parameters: {
|
|
1658
1660
|
url: { type: 'string', description: 'URL to check for CORS misconfigurations', required: true },
|
|
@@ -1946,6 +1948,7 @@ export function registerHackerToolkitTools() {
|
|
|
1946
1948
|
// ─────────────────────────────────────────────────────────────────────────────
|
|
1947
1949
|
registerTool({
|
|
1948
1950
|
name: 'exploit_search',
|
|
1951
|
+
deprecated: true,
|
|
1949
1952
|
description: 'Search for known exploits and CVEs. Queries the NVD (National Vulnerability Database) API for CVE data. Returns CVE IDs, descriptions, CVSS scores, and references.',
|
|
1950
1953
|
parameters: {
|
|
1951
1954
|
query: { type: 'string', description: 'CVE ID (e.g., CVE-2024-1234), software name, or keyword', required: true },
|
|
@@ -2739,6 +2742,7 @@ export function registerHackerToolkitTools() {
|
|
|
2739
2742
|
// ─────────────────────────────────────────────────────────────────────────────
|
|
2740
2743
|
registerTool({
|
|
2741
2744
|
name: 'ssl_analyze',
|
|
2745
|
+
deprecated: true,
|
|
2742
2746
|
description: 'Deep SSL/TLS analysis using Node.js tls module. Returns protocol version, cipher suite, certificate details (issuer, subject, validity, SANs), certificate chain, HSTS status, and potential security issues.',
|
|
2743
2747
|
parameters: {
|
|
2744
2748
|
host: { type: 'string', description: 'Hostname to analyze', required: true },
|
|
@@ -3012,6 +3016,7 @@ export function registerHackerToolkitTools() {
|
|
|
3012
3016
|
// ─────────────────────────────────────────────────────────────────────────────
|
|
3013
3017
|
registerTool({
|
|
3014
3018
|
name: 'forensics_analyze',
|
|
3019
|
+
deprecated: true,
|
|
3015
3020
|
description: 'File forensics analysis. Identify file type by magic bytes, extract printable ASCII strings, get file metadata, hex dump, and calculate Shannon entropy (high entropy = encrypted/compressed).',
|
|
3016
3021
|
parameters: {
|
|
3017
3022
|
file_path: { type: 'string', description: 'Path to file to analyze', required: true },
|
|
@@ -3469,6 +3474,7 @@ export function registerHackerToolkitTools() {
|
|
|
3469
3474
|
// ─────────────────────────────────────────────────────────────────────────────
|
|
3470
3475
|
registerTool({
|
|
3471
3476
|
name: 'security_headers_generate',
|
|
3477
|
+
deprecated: true,
|
|
3472
3478
|
description: 'Generate complete security header configurations for various frameworks. Includes CSP, HSTS, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, Permissions-Policy, and more. Returns framework-specific code ready to copy-paste.',
|
|
3473
3479
|
parameters: {
|
|
3474
3480
|
framework: { type: 'string', description: 'Framework: express, nextjs, nginx, apache, cloudflare, generic', default: 'generic' },
|
package/dist/tools/index.d.ts
CHANGED
|
@@ -18,6 +18,8 @@ export interface ToolDefinition {
|
|
|
18
18
|
timeout?: number;
|
|
19
19
|
/** Max result size in bytes (default: 50_000 = 50KB) */
|
|
20
20
|
maxResultSize?: number;
|
|
21
|
+
/** Marked deprecated as of v4.0; scheduled for removal in 4.1.0. */
|
|
22
|
+
deprecated?: boolean;
|
|
21
23
|
}
|
|
22
24
|
export interface ToolCall {
|
|
23
25
|
id: string;
|
package/dist/tools/index.js
CHANGED
|
@@ -12,6 +12,9 @@
|
|
|
12
12
|
// Re-export the middleware pipeline system
|
|
13
13
|
export { ToolPipeline, createDefaultPipeline, permissionMiddleware, hookMiddleware, timeoutMiddleware, metricsMiddleware, truncationMiddleware, telemetryMiddleware, executionMiddleware, fallbackMiddleware, mcpAppsMiddleware, DEFAULT_FALLBACK_RULES, } from '../tool-pipeline.js';
|
|
14
14
|
import { ToolPipeline, executionMiddleware } from '../tool-pipeline.js';
|
|
15
|
+
import chalk from 'chalk';
|
|
16
|
+
/** Tools whose deprecation warning has already been emitted this process. */
|
|
17
|
+
const deprecationWarned = new Set();
|
|
15
18
|
const registry = new Map();
|
|
16
19
|
const metrics = new Map();
|
|
17
20
|
const DEFAULT_TIMEOUT = 300_000; // 5 minutes
|
|
@@ -118,6 +121,19 @@ export async function executeTool(call) {
|
|
|
118
121
|
`If no MCP server exists, consider using forge_tool to create it at runtime.`;
|
|
119
122
|
return { tool_call_id: call.id, result: suggestion, error: true, duration_ms: 0 };
|
|
120
123
|
}
|
|
124
|
+
// Deprecation warn-once: emit a single chalk.yellow message per tool name per process.
|
|
125
|
+
if (tool.deprecated && !deprecationWarned.has(call.name)) {
|
|
126
|
+
deprecationWarned.add(call.name);
|
|
127
|
+
try {
|
|
128
|
+
console.warn(chalk.yellow(`[kbot] Tool '${call.name}' is deprecated as of v4.0 and scheduled for removal in 4.1.0. ` +
|
|
129
|
+
`See https://github.com/isaacsight/kernel/blob/main/packages/kbot/RELEASE_NOTES_4_0.md`));
|
|
130
|
+
}
|
|
131
|
+
catch {
|
|
132
|
+
// chalk may not be available in some test contexts — fall back to plain text.
|
|
133
|
+
console.warn(`[kbot] Tool '${call.name}' is deprecated as of v4.0 and scheduled for removal in 4.1.0. ` +
|
|
134
|
+
`See https://github.com/isaacsight/kernel/blob/main/packages/kbot/RELEASE_NOTES_4_0.md`);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
121
137
|
const timeout = tool.timeout ?? DEFAULT_TIMEOUT;
|
|
122
138
|
const maxResult = tool.maxResultSize ?? DEFAULT_MAX_RESULT;
|
|
123
139
|
const startTime = Date.now();
|
|
@@ -207,76 +223,35 @@ const LAZY_MODULE_IMPORTS = [
|
|
|
207
223
|
{ path: './parallel.js', registerFn: 'registerParallelTools' },
|
|
208
224
|
{ path: './mcp-client.js', registerFn: 'registerMcpClientTools' },
|
|
209
225
|
{ path: './tasks.js', registerFn: 'registerTaskTools' },
|
|
210
|
-
{ path: './notebook.js', registerFn: 'registerNotebookTools' },
|
|
211
226
|
{ path: './background.js', registerFn: 'registerBackgroundTools' },
|
|
212
227
|
{ path: './sandbox.js', registerFn: 'registerSandboxTools' },
|
|
213
|
-
{ path: './build-matrix.js', registerFn: 'registerBuildMatrixTools' },
|
|
214
228
|
{ path: './subagent.js', registerFn: 'registerSubagentTools' },
|
|
215
229
|
{ path: './worktree.js', registerFn: 'registerWorktreeTools' },
|
|
216
|
-
{ path: './kbot-local.js', registerFn: 'registerKbotLocalTools' },
|
|
217
230
|
{ path: './quality.js', registerFn: 'registerQualityTools' },
|
|
218
231
|
{ path: './memory-tools.js', registerFn: 'registerMemoryTools' },
|
|
219
232
|
{ path: './browser.js', registerFn: 'registerBrowserTools' },
|
|
220
|
-
{ path: './e2b-sandbox.js', registerFn: 'registerE2bTools' },
|
|
221
|
-
{ path: './lsp-tools.js', registerFn: 'registerLspTools' },
|
|
222
|
-
{ path: '../mcp-plugins.js', registerFn: 'registerMcpPluginTools' },
|
|
223
|
-
{ path: '../graph-memory.js', registerFn: 'registerGraphMemoryTools' },
|
|
224
|
-
{ path: '../confidence.js', registerFn: 'registerConfidenceTools' },
|
|
225
233
|
{ path: '../agent-protocol.js', registerFn: 'registerAgentProtocolTools' },
|
|
226
234
|
{ path: '../temporal.js', registerFn: 'registerTemporalTools' },
|
|
227
|
-
{ path: '../reasoning.js', registerFn: 'registerReasoningTools' },
|
|
228
235
|
{ path: '../intentionality.js', registerFn: 'registerIntentionalityTools' },
|
|
229
236
|
{ path: './test-runner.js', registerFn: 'registerTestRunnerTools' },
|
|
230
237
|
{ path: './creative.js', registerFn: 'registerCreativeTools' },
|
|
231
|
-
{ path: './comfyui-plugin.js', registerFn: 'registerComfyUITools' },
|
|
232
238
|
{ path: './magenta-plugin.js', registerFn: 'registerMagentaTools' },
|
|
233
|
-
{ path: './research.js', registerFn: 'registerResearchTools' },
|
|
234
239
|
{ path: './containers.js', registerFn: 'registerContainerTools' },
|
|
235
240
|
{ path: './vfx.js', registerFn: 'registerVfxTools' },
|
|
236
241
|
{ path: './gamedev.js', registerFn: 'registerGamedevTools' },
|
|
237
242
|
{ path: './audit.js', registerFn: 'registerAuditTools' },
|
|
238
|
-
{ path: './documents.js', registerFn: 'registerDocumentTools' },
|
|
239
|
-
{ path: './contribute.js', registerFn: 'registerContributeTools' },
|
|
240
|
-
{ path: './composio.js', registerFn: 'registerComposioTools' },
|
|
241
|
-
{ path: '../marketplace.js', registerFn: 'registerMarketplaceTools' },
|
|
242
243
|
{ path: './browser-agent.js', registerFn: 'registerBrowserAgentTools' },
|
|
243
|
-
{ path: '../workflows.js', registerFn: 'registerWorkflowTools' },
|
|
244
244
|
{ path: './deploy.js', registerFn: 'registerDeployTools' },
|
|
245
245
|
{ path: './mcp-marketplace.js', registerFn: 'registerMcpMarketplaceTools' },
|
|
246
246
|
{ path: './database.js', registerFn: 'registerDatabaseTools' },
|
|
247
|
-
{ path: '../team.js', registerFn: 'registerTeamTools' },
|
|
248
247
|
{ path: '../plugin-sdk.js', registerFn: 'registerPluginSDKTools' },
|
|
249
|
-
{ path: './training.js', registerFn: 'registerTrainingTools' },
|
|
250
248
|
{ path: './social.js', registerFn: 'registerSocialTools' },
|
|
251
249
|
{ path: './forge.js', registerFn: 'registerForgeTools' },
|
|
252
|
-
{ path: '../mcp-apps.js', registerFn: 'registerMcpAppTools' },
|
|
253
|
-
{ path: './machine-tools.js', registerFn: 'registerMachineTools' },
|
|
254
|
-
{ path: './finance.js', registerFn: 'registerFinanceTools' },
|
|
255
|
-
{ path: './wallet.js', registerFn: 'registerWalletTools' },
|
|
256
|
-
{ path: './stocks.js', registerFn: 'registerStockTools' },
|
|
257
|
-
{ path: './sentiment.js', registerFn: 'registerSentimentTools' },
|
|
258
250
|
{ path: './security.js', registerFn: 'registerSecurityTools' },
|
|
259
251
|
{ path: './email.js', registerFn: 'registerEmailTools' },
|
|
260
|
-
{ path: './content-engine.js', registerFn: 'registerContentEngineTools' },
|
|
261
|
-
{ path: './bootstrapper.js', registerFn: 'registerBootstrapperTools' },
|
|
262
|
-
{ path: './lab-core.js', registerFn: 'registerLabCoreTools' },
|
|
263
|
-
{ path: './lab-data.js', registerFn: 'registerLabDataTools' },
|
|
264
|
-
{ path: './lab-bio.js', registerFn: 'registerLabBioTools' },
|
|
265
|
-
{ path: './lab-chem.js', registerFn: 'registerLabChemTools' },
|
|
266
|
-
{ path: './lab-physics.js', registerFn: 'registerLabPhysicsTools' },
|
|
267
|
-
{ path: './lab-earth.js', registerFn: 'registerLabEarthTools' },
|
|
268
|
-
{ path: './lab-math.js', registerFn: 'registerLabMathTools' },
|
|
269
|
-
{ path: './lab-neuro.js', registerFn: 'registerLabNeuroTools' },
|
|
270
|
-
{ path: './lab-social.js', registerFn: 'registerLabSocialTools' },
|
|
271
|
-
{ path: './lab-humanities.js', registerFn: 'registerLabHumanitiesTools' },
|
|
272
|
-
{ path: './lab-health.js', registerFn: 'registerLabHealthTools' },
|
|
273
|
-
{ path: './science-graph.js', registerFn: 'registerScienceGraphTools' },
|
|
274
|
-
{ path: './research-pipeline.js', registerFn: 'registerResearchPipelineTools' },
|
|
275
|
-
{ path: './research-notebook.js', registerFn: 'registerResearchNotebookTools' },
|
|
276
252
|
{ path: './hypothesis-engine.js', registerFn: 'registerHypothesisEngineTools' },
|
|
277
253
|
{ path: './emergent.js', registerFn: 'registerEmergentTools' },
|
|
278
254
|
{ path: './security-hunt.js', registerFn: 'registerSecurityHuntTools' },
|
|
279
|
-
{ path: './lab-frontier.js', registerFn: 'registerFrontierTools' },
|
|
280
255
|
{ path: './ableton.js', registerFn: 'registerAbletonTools' },
|
|
281
256
|
{ path: './ableton-knowledge.js', registerFn: 'registerAbletonKnowledgeTools' },
|
|
282
257
|
{ path: './ableton-bridge-tools.js', registerFn: 'registerAbletonBridgeTools' },
|
|
@@ -285,59 +260,20 @@ const LAZY_MODULE_IMPORTS = [
|
|
|
285
260
|
{ path: './producer-engine.js', registerFn: 'registerProducerEngine' },
|
|
286
261
|
{ path: './sound-designer.js', registerFn: 'registerSoundDesignerTools' },
|
|
287
262
|
{ path: './arrangement-engine.js', registerFn: 'registerArrangementEngine' },
|
|
288
|
-
{ path: '../behaviour.js', registerFn: 'registerBehaviourTools' },
|
|
289
263
|
{ path: '../skill-system.js', registerFn: 'registerSkillTools' },
|
|
290
|
-
{ path: './admin.js', registerFn: 'registerAdminTools' },
|
|
291
|
-
{ path: './monitor.js', registerFn: 'registerMonitorTools' },
|
|
292
|
-
{ path: './deploy-all.js', registerFn: 'registerDeployAllTools' },
|
|
293
264
|
{ path: './analytics.js', registerFn: 'registerAnalyticsTools' },
|
|
294
|
-
{ path: './env-manager.js', registerFn: 'registerEnvTools' },
|
|
295
|
-
{ path: './db-admin.js', registerFn: 'registerDbAdminTools' },
|
|
296
|
-
{ path: './visa-payments.js', registerFn: 'registerVisaPaymentTools' },
|
|
297
265
|
{ path: './security-brain.js', registerFn: 'registerSecurityBrainTools' },
|
|
298
|
-
{ path: './ctf.js', registerFn: 'registerCtfTools' },
|
|
299
|
-
{ path: './pentest.js', registerFn: 'registerPentestTools' },
|
|
300
266
|
{ path: './redblue.js', registerFn: 'registerRedBlueTools' },
|
|
301
267
|
{ path: './hacker-toolkit.js', registerFn: 'registerHackerToolkitTools' },
|
|
302
268
|
{ path: './threat-intel.js', registerFn: 'registerThreatIntelTools' },
|
|
303
269
|
{ path: './dj-set-builder.js', registerFn: 'registerDjSetBuilderTools' },
|
|
304
270
|
{ path: './serum2-preset.js', registerFn: 'registerSerum2PresetTools' },
|
|
305
271
|
{ path: './dream-tools.js', registerFn: 'registerDreamTools' },
|
|
306
|
-
{ path: './collective-dream-tools.js', registerFn: 'registerCollectiveDreamTools' },
|
|
307
|
-
{ path: './memory-scanner-tools.js', registerFn: 'registerMemoryScannerTools' },
|
|
308
|
-
{ path: './buddy-tools.js', registerFn: 'registerBuddyTools' },
|
|
309
|
-
{ path: './voice-input-tools.js', registerFn: 'registerVoiceInputTools' },
|
|
310
|
-
{ path: './watchdog.js', registerFn: 'registerWatchdogTools' },
|
|
311
|
-
{ path: './behavior-tools.js', registerFn: 'registerBehaviorTools' },
|
|
312
|
-
{ path: './a2a.js', registerFn: 'registerA2ATools' },
|
|
313
|
-
{ path: './financial-analysis.js', registerFn: 'registerFinancialAnalysisTools' },
|
|
314
|
-
{ path: './ai-analysis.js', registerFn: 'registerAIAnalysisTools' },
|
|
315
|
-
{ path: './music-gen.js', registerFn: 'registerMusicGenTools' },
|
|
316
272
|
{ path: './one-prompt-producer.js', registerFn: 'registerOnePromptTools' },
|
|
317
|
-
{ path: './mobile-automation.js', registerFn: 'registerMobileAutomationTools' },
|
|
318
|
-
{ path: './iphone.js', registerFn: 'registerIPhoneTools' },
|
|
319
|
-
{ path: './ghost.js', registerFn: 'registerGhostTools' },
|
|
320
|
-
{ path: './streaming.js', registerFn: 'registerStreamingTools' },
|
|
321
|
-
{ path: './stream-character.js', registerFn: 'registerStreamCharacterTools' },
|
|
322
|
-
{ path: './stream-renderer.js', registerFn: 'registerStreamRendererTools' },
|
|
323
273
|
{ path: './kbot-browser.js', registerFn: 'registerKBotBrowserTools' },
|
|
324
274
|
{ path: './kbot-terminal.js', registerFn: 'registerKBotTerminalTools' },
|
|
325
|
-
{ path: './stream-control.js', registerFn: 'registerStreamControlTools' },
|
|
326
|
-
{ path: './tile-world.js', registerFn: 'registerTileWorldTools' },
|
|
327
|
-
{ path: './stream-self-eval.js', registerFn: 'registerStreamSelfEvalTools' },
|
|
328
275
|
{ path: './audio-engine.js', registerFn: 'registerAudioEngineTools' },
|
|
329
|
-
{ path: './narrative-engine.js', registerFn: 'registerNarrativeEngineTools' },
|
|
330
|
-
{ path: './social-engine.js', registerFn: 'registerSocialEngineTools' },
|
|
331
|
-
{ path: './evolution-engine.js', registerFn: 'registerEvolutionEngineTools' },
|
|
332
|
-
{ path: './coordination-engine.js', registerFn: 'registerCoordinationEngineTools' },
|
|
333
276
|
{ path: './foundation-engines.js', registerFn: 'registerFoundationEngineTools' },
|
|
334
|
-
{ path: './research-engine.js', registerFn: 'registerResearchEngineTools' },
|
|
335
|
-
{ path: './stream-overlay.js', registerFn: 'registerOverlayTools' },
|
|
336
|
-
{ path: './stream-weather.js', registerFn: 'registerStreamWeatherTools' },
|
|
337
|
-
{ path: './stream-chat-ai.js', registerFn: 'registerStreamChatAITools' },
|
|
338
|
-
{ path: './stream-vod.js', registerFn: 'registerStreamVODTools' },
|
|
339
|
-
{ path: './stream-commands.js', registerFn: 'registerStreamCommandsTools' },
|
|
340
|
-
{ path: '../coordinator.js', registerFn: 'registerCoordinatorTools' },
|
|
341
277
|
{ path: './swarm-2026-04.js', registerFn: 'registerSwarm2026Tools' },
|
|
342
278
|
];
|
|
343
279
|
/** Track whether lazy tools have been registered */
|
|
@@ -939,6 +939,7 @@ export function registerKBotBrowserTools() {
|
|
|
939
939
|
});
|
|
940
940
|
registerTool({
|
|
941
941
|
name: 'kbot_read',
|
|
942
|
+
deprecated: true,
|
|
942
943
|
description: "Get the current page content in reader mode (clean text, no clutter). Uses kbot's built-in browser.",
|
|
943
944
|
parameters: {},
|
|
944
945
|
tier: 'free',
|
package/dist/tools/quality.js
CHANGED
|
@@ -182,6 +182,7 @@ export function registerQualityTools() {
|
|
|
182
182
|
// ── Dependency Audit ──
|
|
183
183
|
registerTool({
|
|
184
184
|
name: 'deps_audit',
|
|
185
|
+
deprecated: true,
|
|
185
186
|
description: 'Audit dependencies for known vulnerabilities. Returns CVE IDs, severity, and fix suggestions. Auto-detects npm, pip, cargo, go.',
|
|
186
187
|
parameters: {
|
|
187
188
|
fix: { type: 'boolean', description: 'Auto-fix vulnerabilities where possible (default: false)' },
|
package/dist/tools/redblue.js
CHANGED
|
@@ -2824,6 +2824,7 @@ export function registerRedBlueTools() {
|
|
|
2824
2824
|
// ─── Tool 2: Blue Team Harden ────────────────────────────────────────────────
|
|
2825
2825
|
registerTool({
|
|
2826
2826
|
name: 'blueteam_harden',
|
|
2827
|
+
deprecated: true,
|
|
2827
2828
|
description: 'Blue team: generate security hardening recommendations with ready-to-use code snippets. Produces security headers middleware, input validation patterns, auth hardening, crypto best practices, and logging/monitoring setup. Returns actionable code that can be directly applied.',
|
|
2828
2829
|
parameters: {
|
|
2829
2830
|
path: { type: 'string', description: 'Directory to analyze for context (default: current directory)' },
|
|
@@ -2941,6 +2942,7 @@ export function registerRedBlueTools() {
|
|
|
2941
2942
|
// ─── Tool 3: Red Team Report ─────────────────────────────────────────────────
|
|
2942
2943
|
registerTool({
|
|
2943
2944
|
name: 'redteam_report',
|
|
2945
|
+
deprecated: true,
|
|
2944
2946
|
description: 'Generate a professional penetration test report (defensive security assessment). Runs a full security audit and formats results as an executive assessment with risk score, attack surface mapping, critical findings with exploitation scenarios for context, risk matrix, and prioritized remediation plan. Defensive security context: use only on systems you own or have explicit permission to test.',
|
|
2945
2947
|
parameters: {
|
|
2946
2948
|
path: { type: 'string', description: 'Directory to assess (default: current directory)' },
|
|
@@ -3193,6 +3195,7 @@ export function registerRedBlueTools() {
|
|
|
3193
3195
|
// ─── Tool 4: Blue Team Checklist ─────────────────────────────────────────────
|
|
3194
3196
|
registerTool({
|
|
3195
3197
|
name: 'blueteam_checklist',
|
|
3198
|
+
deprecated: true,
|
|
3196
3199
|
description: 'Generate a comprehensive security hardening checklist tailored to a specific framework. Covers authentication, input validation, security headers, cryptography, logging, rate limiting, CORS/CSRF, dependency management, secrets, and infrastructure. Returns checkboxes for tracking completion.',
|
|
3197
3200
|
parameters: {
|
|
3198
3201
|
framework: { type: 'string', description: 'Framework: "express", "nextjs", "fastify", "django", "flask", "rails", "generic" (default: "generic")' },
|
|
@@ -3211,6 +3214,7 @@ export function registerRedBlueTools() {
|
|
|
3211
3214
|
// ─── Tool 5: Threat Model ────────────────────────────────────────────────────
|
|
3212
3215
|
registerTool({
|
|
3213
3216
|
name: 'threat_model',
|
|
3217
|
+
deprecated: true,
|
|
3214
3218
|
description: 'Perform threat modeling on a codebase. Analyzes code structure to identify data flows, trust boundaries, and threats. Supports STRIDE (Spoofing, Tampering, Repudiation, Information Disclosure, DoS, Elevation of Privilege), DREAD (Damage, Reproducibility, Exploitability, Affected Users, Discoverability), and PASTA (Process for Attack Simulation and Threat Analysis) methodologies.',
|
|
3215
3219
|
parameters: {
|
|
3216
3220
|
path: { type: 'string', description: 'Directory to analyze (default: current directory)' },
|
|
@@ -2196,6 +2196,7 @@ export function registerSecurityBrainTools() {
|
|
|
2196
2196
|
// ── Tool 1: security_brain ──────────────────────────────────────────
|
|
2197
2197
|
registerTool({
|
|
2198
2198
|
name: 'security_brain',
|
|
2199
|
+
deprecated: true,
|
|
2199
2200
|
description: 'Query the security knowledge base. Covers MITRE ATT&CK (14 tactics, 200+ techniques), OWASP Top 10 (2025), Lockheed Martin Kill Chain, CVE patterns, and kbot security tool mapping. Use this as a first stop for any security question.',
|
|
2200
2201
|
parameters: {
|
|
2201
2202
|
topic: { type: 'string', description: 'What to look up — technique name, vulnerability type, attack pattern, tool name, or general security topic', required: true },
|
|
@@ -2340,6 +2341,7 @@ export function registerSecurityBrainTools() {
|
|
|
2340
2341
|
// ── Tool 2: attack_lookup ───────────────────────────────────────────
|
|
2341
2342
|
registerTool({
|
|
2342
2343
|
name: 'attack_lookup',
|
|
2344
|
+
deprecated: true,
|
|
2343
2345
|
description: 'Look up MITRE ATT&CK techniques by ID (T1566) or keyword (phishing). Returns technique details including tactic, description, sub-techniques, detection methods, and mitigations. Covers all 14 ATT&CK tactics with top techniques for each.',
|
|
2344
2346
|
parameters: {
|
|
2345
2347
|
query: { type: 'string', description: 'Technique ID (e.g., T1566, T1059.001) or keyword (e.g., phishing, injection, credential dumping)', required: true },
|
|
@@ -2425,6 +2427,7 @@ export function registerSecurityBrainTools() {
|
|
|
2425
2427
|
// ── Tool 3: killchain_analyze ───────────────────────────────────────
|
|
2426
2428
|
registerTool({
|
|
2427
2429
|
name: 'killchain_analyze',
|
|
2430
|
+
deprecated: true,
|
|
2428
2431
|
description: 'Map an attack or vulnerability description to Lockheed Martin Kill Chain stages. Provides kill chain stage mapping with confidence levels, related MITRE ATT&CK techniques, OWASP entries, CVE patterns, and defensive recommendations with specific kbot tools.',
|
|
2429
2432
|
parameters: {
|
|
2430
2433
|
description: { type: 'string', description: 'Description of the attack, vulnerability, or threat scenario to analyze and map to kill chain stages', required: true },
|
|
@@ -621,6 +621,7 @@ function formatReport(report) {
|
|
|
621
621
|
export function registerSecurityHuntTools() {
|
|
622
622
|
registerTool({
|
|
623
623
|
name: 'security_hunt',
|
|
624
|
+
deprecated: true,
|
|
624
625
|
description: 'Defensive security audit — chains kbot\'s security scanners into a single comprehensive sweep. Scans for: open ports, SSL issues, missing headers, hardcoded secrets, dependency CVEs, supply chain risks, OWASP Top 10 code vulnerabilities, and dangerous patterns. Returns a scored report with severity ratings and fix recommendations. Defensive security context: use only on systems you own or have explicit permission to test.',
|
|
625
626
|
parameters: {
|
|
626
627
|
path: {
|
package/dist/tools/security.js
CHANGED
|
@@ -13,6 +13,7 @@ export function registerSecurityTools() {
|
|
|
13
13
|
// ─── Dependency Audit ───
|
|
14
14
|
registerTool({
|
|
15
15
|
name: 'dep_audit',
|
|
16
|
+
deprecated: true,
|
|
16
17
|
description: 'Audit project dependencies for known vulnerabilities. Runs npm audit, pip audit, or cargo audit depending on the project. Returns CVE IDs, severity, and fix recommendations.',
|
|
17
18
|
parameters: {
|
|
18
19
|
path: { type: 'string', description: 'Project directory to audit (default: current directory)' },
|
|
@@ -132,6 +133,7 @@ export function registerSecurityTools() {
|
|
|
132
133
|
// ─── Secret Scanner ───
|
|
133
134
|
registerTool({
|
|
134
135
|
name: 'secret_scan',
|
|
136
|
+
deprecated: true,
|
|
135
137
|
description: 'Scan files for accidentally committed secrets — API keys, tokens, passwords, private keys. Checks common patterns (AWS, Stripe, GitHub, Supabase, etc). Does NOT read .env files.',
|
|
136
138
|
parameters: {
|
|
137
139
|
path: { type: 'string', description: 'Directory to scan (default: current directory)' },
|
|
@@ -233,6 +235,7 @@ export function registerSecurityTools() {
|
|
|
233
235
|
// ─── SSL/TLS Check ───
|
|
234
236
|
registerTool({
|
|
235
237
|
name: 'ssl_check',
|
|
238
|
+
deprecated: true,
|
|
236
239
|
description: 'Check SSL/TLS certificate for any domain — expiry date, issuer, protocol, and security grade. Catches expiring certs before they break your site.',
|
|
237
240
|
parameters: {
|
|
238
241
|
domain: { type: 'string', description: 'Domain to check (e.g. "kernel.chat", "api.example.com")', required: true },
|
|
@@ -281,6 +284,7 @@ export function registerSecurityTools() {
|
|
|
281
284
|
// ─── Security Headers Check ───
|
|
282
285
|
registerTool({
|
|
283
286
|
name: 'headers_check',
|
|
287
|
+
deprecated: true,
|
|
284
288
|
description: 'Check HTTP security headers for any URL — CSP, HSTS, X-Frame-Options, etc. Reports missing headers that leave you vulnerable to XSS, clickjacking, and MIME sniffing.',
|
|
285
289
|
parameters: {
|
|
286
290
|
url: { type: 'string', description: 'URL to check (e.g. "https://kernel.chat")', required: true },
|
|
@@ -334,6 +338,7 @@ export function registerSecurityTools() {
|
|
|
334
338
|
// ─── CVE Lookup ───
|
|
335
339
|
registerTool({
|
|
336
340
|
name: 'cve_lookup',
|
|
341
|
+
deprecated: true,
|
|
337
342
|
description: 'Look up a CVE by ID or search for vulnerabilities affecting a specific package/product. Uses the NVD (National Vulnerability Database) API.',
|
|
338
343
|
parameters: {
|
|
339
344
|
query: { type: 'string', description: 'CVE ID (e.g. "CVE-2024-1234") or package name (e.g. "log4j", "openssl")', required: true },
|
|
@@ -475,6 +480,7 @@ export function registerSecurityTools() {
|
|
|
475
480
|
// ─── OWASP Quick Check ───
|
|
476
481
|
registerTool({
|
|
477
482
|
name: 'owasp_check',
|
|
483
|
+
deprecated: true,
|
|
478
484
|
description: 'Quick OWASP Top 10 check against a codebase. Scans for common vulnerability patterns: SQL injection, XSS, command injection, path traversal, hardcoded secrets, insecure deserialization.',
|
|
479
485
|
parameters: {
|
|
480
486
|
path: { type: 'string', description: 'Directory to scan (default: current directory)' },
|
|
@@ -501,6 +501,7 @@ function runTests(projectPath, opts = {}) {
|
|
|
501
501
|
export function registerTestRunnerTools() {
|
|
502
502
|
registerTool({
|
|
503
503
|
name: 'run_tests',
|
|
504
|
+
deprecated: true,
|
|
504
505
|
description: 'Run project tests. Auto-detects the test framework (vitest, jest, pytest, cargo, go, npm) by checking config files, runs tests, and returns structured pass/fail results with failure details the agent can use to auto-fix issues.',
|
|
505
506
|
parameters: {
|
|
506
507
|
path: { type: 'string', description: 'Project root path. Defaults to current working directory.' },
|
|
@@ -856,6 +856,7 @@ export function registerThreatIntelTools() {
|
|
|
856
856
|
// ─── 1. threat_feed ─────────────────────────────────────────────────────────
|
|
857
857
|
registerTool({
|
|
858
858
|
name: 'threat_feed',
|
|
859
|
+
deprecated: true,
|
|
859
860
|
description: 'Aggregate cyber threat intelligence from free public sources. Fetches recent high/critical CVEs from NIST NVD, recent exploits from Exploit-DB, and optionally matches against your tech stack (from dream journal insights). Returns top threats with severity, affected software, and stack relevance.',
|
|
860
861
|
parameters: {
|
|
861
862
|
days: { type: 'number', description: 'Look-back period in days (default: 7, max: 30)' },
|
|
@@ -1285,6 +1286,7 @@ export function registerThreatIntelTools() {
|
|
|
1285
1286
|
// ─── 4. incident_response ───────────────────────────────────────────────────
|
|
1286
1287
|
registerTool({
|
|
1287
1288
|
name: 'incident_response',
|
|
1289
|
+
deprecated: true,
|
|
1288
1290
|
description: 'Generate an incident response playbook for a security incident. Given an incident type and description, produces a structured playbook with containment steps, eradication plan, recovery checklist, lessons learned template, and IOC indicators. Uses local Ollama for contextual AI analysis when available. Incident types: ransomware, data_breach, ddos, insider_threat, supply_chain.',
|
|
1289
1291
|
parameters: {
|
|
1290
1292
|
incident_type: { type: 'string', description: 'Type of incident: ransomware, data_breach, ddos, insider_threat, supply_chain', required: true },
|
package/dist/ui.js
CHANGED
|
@@ -123,7 +123,7 @@ export function banner(version) {
|
|
|
123
123
|
? gradient('kbot', [167, 139, 250], [103, 232, 249])
|
|
124
124
|
: ACCENT('kbot');
|
|
125
125
|
const title = ` ${bannerText}${v}`;
|
|
126
|
-
const features = DIM(' Web search: free • 35 agents •
|
|
126
|
+
const features = DIM(' Web search: free • 35 specialist agents • 100+ skills • bring your own key');
|
|
127
127
|
return `\n${grid}\n${title}\n${features}\n`;
|
|
128
128
|
}
|
|
129
129
|
export function bannerCompact() {
|
|
@@ -283,7 +283,7 @@ export function printHelp() {
|
|
|
283
283
|
` ${CYAN('https://kernel.chat')} ${DIM('Web companion')}`,
|
|
284
284
|
` ${CYAN('https://github.com/isaacsight/kernel')} ${DIM('GitHub')}`,
|
|
285
285
|
'',
|
|
286
|
-
` ${DIM('35 specialist agents.
|
|
286
|
+
` ${DIM('35 specialist agents. 100+ skills. Type anything to get started.')}`,
|
|
287
287
|
'',
|
|
288
288
|
];
|
|
289
289
|
status(lines.join('\n'));
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kernel.chat/kbot",
|
|
3
|
-
"version": "
|
|
4
|
-
"description": "Open-source terminal AI agent.
|
|
3
|
+
"version": "4.0.1",
|
|
4
|
+
"description": "Open-source terminal AI agent. 100+ specialist skills, 35 specialist agents, 20 providers. Dreams, learns, watches your system. Controls your phone. Fully local, fully sovereign. MIT. v4.0 — evidence-based curation.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|