@kernel.chat/kbot 3.41.0 → 3.43.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.
- package/README.md +5 -5
- package/dist/agent-teams.d.ts +1 -1
- package/dist/agent-teams.d.ts.map +1 -1
- package/dist/agent-teams.js +36 -3
- package/dist/agent-teams.js.map +1 -1
- package/dist/agents/specialists.d.ts.map +1 -1
- package/dist/agents/specialists.js +20 -0
- package/dist/agents/specialists.js.map +1 -1
- package/dist/auth.d.ts +5 -1
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +1 -1
- package/dist/auth.js.map +1 -1
- package/dist/channels/kbot-channel.js +8 -31
- package/dist/channels/kbot-channel.js.map +1 -1
- package/dist/cli.js +44 -11
- package/dist/cli.js.map +1 -1
- package/dist/completions.d.ts.map +1 -1
- package/dist/completions.js +7 -0
- package/dist/completions.js.map +1 -1
- package/dist/digest.js +1 -1
- package/dist/digest.js.map +1 -1
- package/dist/doctor.d.ts.map +1 -1
- package/dist/doctor.js +132 -92
- package/dist/doctor.js.map +1 -1
- package/dist/doctor.test.d.ts +2 -0
- package/dist/doctor.test.d.ts.map +1 -0
- package/dist/doctor.test.js +432 -0
- package/dist/doctor.test.js.map +1 -0
- package/dist/email-service.d.ts.map +1 -1
- package/dist/email-service.js +1 -2
- package/dist/email-service.js.map +1 -1
- package/dist/episodic-memory.d.ts.map +1 -1
- package/dist/episodic-memory.js +14 -0
- package/dist/episodic-memory.js.map +1 -1
- package/dist/learned-router.d.ts.map +1 -1
- package/dist/learned-router.js +29 -0
- package/dist/learned-router.js.map +1 -1
- package/dist/tools/email.d.ts.map +1 -1
- package/dist/tools/email.js +2 -3
- package/dist/tools/email.js.map +1 -1
- package/dist/tools/hypothesis-engine.d.ts +2 -0
- package/dist/tools/hypothesis-engine.d.ts.map +1 -0
- package/dist/tools/hypothesis-engine.js +2276 -0
- package/dist/tools/hypothesis-engine.js.map +1 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +11 -1
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/lab-bio.d.ts +2 -0
- package/dist/tools/lab-bio.d.ts.map +1 -0
- package/dist/tools/lab-bio.js +1392 -0
- package/dist/tools/lab-bio.js.map +1 -0
- package/dist/tools/lab-chem.d.ts +2 -0
- package/dist/tools/lab-chem.d.ts.map +1 -0
- package/dist/tools/lab-chem.js +1257 -0
- package/dist/tools/lab-chem.js.map +1 -0
- package/dist/tools/lab-core.d.ts +2 -0
- package/dist/tools/lab-core.d.ts.map +1 -0
- package/dist/tools/lab-core.js +2452 -0
- package/dist/tools/lab-core.js.map +1 -0
- package/dist/tools/lab-data.d.ts +2 -0
- package/dist/tools/lab-data.d.ts.map +1 -0
- package/dist/tools/lab-data.js +2464 -0
- package/dist/tools/lab-data.js.map +1 -0
- package/dist/tools/lab-earth.d.ts +2 -0
- package/dist/tools/lab-earth.d.ts.map +1 -0
- package/dist/tools/lab-earth.js +1124 -0
- package/dist/tools/lab-earth.js.map +1 -0
- package/dist/tools/lab-math.d.ts +2 -0
- package/dist/tools/lab-math.d.ts.map +1 -0
- package/dist/tools/lab-math.js +3021 -0
- package/dist/tools/lab-math.js.map +1 -0
- package/dist/tools/lab-physics.d.ts +2 -0
- package/dist/tools/lab-physics.d.ts.map +1 -0
- package/dist/tools/lab-physics.js +2423 -0
- package/dist/tools/lab-physics.js.map +1 -0
- package/dist/tools/research-notebook.d.ts +2 -0
- package/dist/tools/research-notebook.d.ts.map +1 -0
- package/dist/tools/research-notebook.js +1165 -0
- package/dist/tools/research-notebook.js.map +1 -0
- package/dist/tools/research-pipeline.d.ts +2 -0
- package/dist/tools/research-pipeline.d.ts.map +1 -0
- package/dist/tools/research-pipeline.js +1094 -0
- package/dist/tools/research-pipeline.js.map +1 -0
- package/dist/tools/science-graph.d.ts +2 -0
- package/dist/tools/science-graph.d.ts.map +1 -0
- package/dist/tools/science-graph.js +995 -0
- package/dist/tools/science-graph.js.map +1 -0
- package/package.json +2 -3
package/dist/cli.js
CHANGED
|
@@ -36,7 +36,7 @@ async function main() {
|
|
|
36
36
|
.name('kbot')
|
|
37
37
|
.description('kbot — Open-source terminal AI agent. Bring your own key, pick your model, run locally.')
|
|
38
38
|
.version(VERSION)
|
|
39
|
-
.option('-a, --agent <agent>', 'Force a specific agent (run kbot agents to see all
|
|
39
|
+
.option('-a, --agent <agent>', 'Force a specific agent (run kbot agents to see all 26)')
|
|
40
40
|
.option('-m, --model <model>', 'Override AI model (auto, sonnet, haiku)')
|
|
41
41
|
.option('-s, --stream', 'Stream the response')
|
|
42
42
|
.option('-p, --pipe', 'Pipe mode — raw text output for scripting')
|
|
@@ -78,7 +78,7 @@ async function main() {
|
|
|
78
78
|
console.log(` ${chalk.dim('─'.repeat(50))}`);
|
|
79
79
|
console.log(` ${chalk.white('kbot auth')} Configure your API key (20 providers)`);
|
|
80
80
|
console.log(` ${chalk.white('kbot doctor')} Diagnose setup issues`);
|
|
81
|
-
console.log(` ${chalk.white('kbot agents')} List all
|
|
81
|
+
console.log(` ${chalk.white('kbot agents')} List all 26 specialist agents`);
|
|
82
82
|
console.log(` ${chalk.white('kbot status')} Full dashboard — tools, agents, stats`);
|
|
83
83
|
console.log(` ${chalk.white('kbot init')} Set up kbot for this project (60s)`);
|
|
84
84
|
console.log(` ${chalk.white('kbot update')} Update to the latest version`);
|
|
@@ -99,7 +99,7 @@ async function main() {
|
|
|
99
99
|
console.log(` ${chalk.cyan('https://github.com/isaacsight/kernel/issues')} ${chalk.dim('Bug reports')}`);
|
|
100
100
|
console.log(` ${chalk.cyan('support@kernel.chat')} ${chalk.dim('Email (AI-assisted replies)')}`);
|
|
101
101
|
console.log();
|
|
102
|
-
console.log(` ${chalk.dim('
|
|
102
|
+
console.log(` ${chalk.dim('26 specialist agents · 360+ tools · 20 providers · MIT licensed')}`);
|
|
103
103
|
console.log();
|
|
104
104
|
process.exit(0);
|
|
105
105
|
});
|
|
@@ -130,10 +130,16 @@ async function main() {
|
|
|
130
130
|
ideCmd
|
|
131
131
|
.command('status')
|
|
132
132
|
.description('Show IDE bridge status')
|
|
133
|
-
.
|
|
133
|
+
.option('--json', 'Output as JSON')
|
|
134
|
+
.action(async (opts) => {
|
|
135
|
+
const jsonMode = opts.json || program.opts().json;
|
|
134
136
|
const { initBridge, getStatus } = await import('./ide/bridge.js');
|
|
135
137
|
await initBridge();
|
|
136
138
|
const status = getStatus();
|
|
139
|
+
if (jsonMode) {
|
|
140
|
+
console.log(JSON.stringify(status, null, 2));
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
137
143
|
printInfo('kbot IDE Bridge Status');
|
|
138
144
|
printInfo(` Version: ${status.version}`);
|
|
139
145
|
printInfo(` Agent: ${status.agent}`);
|
|
@@ -1425,7 +1431,7 @@ async function main() {
|
|
|
1425
1431
|
const collectiveState = getOptInState();
|
|
1426
1432
|
// ── 4. Tools count ──
|
|
1427
1433
|
const { getAllTools } = await import('./tools/index.js');
|
|
1428
|
-
const toolCount = getAllTools().length ||
|
|
1434
|
+
const toolCount = getAllTools().length || 362; // fallback to known count if tools not yet registered
|
|
1429
1435
|
// ── 5. Bootstrap (autotelic score) ──
|
|
1430
1436
|
let bootstrapScore = 0;
|
|
1431
1437
|
let bootstrapMax = 0;
|
|
@@ -1459,7 +1465,7 @@ async function main() {
|
|
|
1459
1465
|
latestVersion: latestVersion || null,
|
|
1460
1466
|
isLatest,
|
|
1461
1467
|
tools: toolCount,
|
|
1462
|
-
agents:
|
|
1468
|
+
agents: 26,
|
|
1463
1469
|
cognitiveModules: cognitiveCount,
|
|
1464
1470
|
learning: {
|
|
1465
1471
|
patterns: stats.patternsCount,
|
|
@@ -1491,7 +1497,7 @@ async function main() {
|
|
|
1491
1497
|
process.stderr.write(` ${AMETHYST('◉')} ${chalk.bold('Kernel Status')}\n`);
|
|
1492
1498
|
process.stderr.write(line + '\n');
|
|
1493
1499
|
process.stderr.write(` ${chalk.bold('Version')} ${VERSION}${versionTag}\n`);
|
|
1494
|
-
process.stderr.write(` ${chalk.bold('Tools')} ${fmtNum(toolCount)} ${DIM('|')} ${chalk.bold('Agents')}
|
|
1500
|
+
process.stderr.write(` ${chalk.bold('Tools')} ${fmtNum(toolCount)} ${DIM('|')} ${chalk.bold('Agents')} 26\n`);
|
|
1495
1501
|
process.stderr.write(` ${chalk.bold('Cognitive')} ${cognitiveCount}/${cognitiveCount} modules active\n`);
|
|
1496
1502
|
process.stderr.write(line + '\n');
|
|
1497
1503
|
// Learning
|
|
@@ -2865,15 +2871,42 @@ async function main() {
|
|
|
2865
2871
|
}
|
|
2866
2872
|
}
|
|
2867
2873
|
}
|
|
2868
|
-
// Still no provider — launch guided setup
|
|
2874
|
+
// Still no provider — launch guided setup (interactive) or show setup guide (non-interactive)
|
|
2869
2875
|
if (!byokActive) {
|
|
2876
|
+
if (!process.stdin.isTTY || opts.pipe || opts.json) {
|
|
2877
|
+
// Non-interactive: can't run guided setup, show actionable guide and exit
|
|
2878
|
+
printNoProviderGuide();
|
|
2879
|
+
return;
|
|
2880
|
+
}
|
|
2870
2881
|
const result = await guidedSetup();
|
|
2871
|
-
if (!result)
|
|
2882
|
+
if (!result) {
|
|
2883
|
+
// User quit guided setup — show the guide so they know how to proceed
|
|
2884
|
+
printNoProviderGuide();
|
|
2872
2885
|
return;
|
|
2886
|
+
}
|
|
2873
2887
|
byokActive = true;
|
|
2874
2888
|
localActive = result.local;
|
|
2875
2889
|
}
|
|
2876
2890
|
}
|
|
2891
|
+
/** Print a friendly multi-line guide when no AI provider is configured */
|
|
2892
|
+
function printNoProviderGuide() {
|
|
2893
|
+
console.log();
|
|
2894
|
+
printWarn('No API key configured yet. Let\'s fix that!');
|
|
2895
|
+
console.log();
|
|
2896
|
+
console.log(` ${chalk.bold('Quick start')} ${chalk.dim('(pick one):')}`);
|
|
2897
|
+
console.log();
|
|
2898
|
+
console.log(` ${chalk.dim('Cloud (needs API key):')}`);
|
|
2899
|
+
console.log(` ${chalk.green('kbot auth')} ${chalk.dim('Interactive setup — walks you through it')}`);
|
|
2900
|
+
console.log(` ${chalk.green('kbot byok')} ${chalk.dim('Bring Your Own Key for 15+ providers')}`);
|
|
2901
|
+
console.log();
|
|
2902
|
+
console.log(` ${chalk.dim('Local (free, no key needed):')}`);
|
|
2903
|
+
console.log(` ${chalk.green('kbot local')} ${chalk.dim('Use Ollama, LM Studio, or Jan')}`);
|
|
2904
|
+
console.log(` ${chalk.green('kbot doctor')} ${chalk.dim('Check what\'s already installed')}`);
|
|
2905
|
+
console.log();
|
|
2906
|
+
console.log(` ${chalk.dim('Get started fast:')} ${chalk.green('kbot auth')}`);
|
|
2907
|
+
console.log(` ${chalk.dim('Docs:')} ${chalk.underline('https://github.com/isaacsight/kernel')}`);
|
|
2908
|
+
console.log();
|
|
2909
|
+
}
|
|
2877
2910
|
/** Auto-detect provider from environment variables */
|
|
2878
2911
|
function autoDetectFromEnv() {
|
|
2879
2912
|
const envKeys = [
|
|
@@ -3225,7 +3258,7 @@ async function byokFlow() {
|
|
|
3225
3258
|
console.log();
|
|
3226
3259
|
printSuccess(`BYOK mode enabled — ${providerConfig.name}`);
|
|
3227
3260
|
printInfo('You pay the provider directly. No message limits. No restrictions.');
|
|
3228
|
-
printInfo('All
|
|
3261
|
+
printInfo('All 362 tools + 26 agents + learning system = yours.');
|
|
3229
3262
|
console.log();
|
|
3230
3263
|
printSuccess('Ready. Run `kbot` to start.');
|
|
3231
3264
|
}
|
|
@@ -3503,7 +3536,7 @@ async function startRepl(agentOpts, context, tier, byokActive = false, localActi
|
|
|
3503
3536
|
const suggestions = await detectProjectSuggestions();
|
|
3504
3537
|
console.log();
|
|
3505
3538
|
console.log(chalk.dim(' ┌─────────────────────────────────────────────────┐'));
|
|
3506
|
-
console.log(chalk.dim(' │') + chalk.bold('
|
|
3539
|
+
console.log(chalk.dim(' │') + chalk.bold(' 26 agents. 362 tools. Just say what you need. ') + chalk.dim(' │'));
|
|
3507
3540
|
console.log(chalk.dim(' │ │'));
|
|
3508
3541
|
if (suggestions.length > 0) {
|
|
3509
3542
|
for (const s of suggestions.slice(0, 4)) {
|