@kernel.chat/kbot 1.1.1 → 1.3.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/dist/agent.d.ts CHANGED
@@ -17,20 +17,7 @@ export interface AgentResponse {
17
17
  cost_usd: number;
18
18
  };
19
19
  }
20
- /**
21
- * Run the agent loop for a single user message.
22
- * Returns the final text response.
23
- *
24
- * Flow:
25
- * 1. Try local-first (free, instant) — handles file reads, git, ls
26
- * 2. If needs reasoning, send to Kernel API with rich context
27
- * 3. Execute any tool calls locally (free)
28
- * 4. Send results back to API if needed (costs 1 more message)
29
- */
30
20
  export declare function runAgent(message: string, options?: AgentOptions): Promise<AgentResponse>;
31
- /**
32
- * One-shot: run agent and print the response.
33
- * Used for `kbot "do something"` inline mode.
34
- */
21
+ /** One-shot: run agent and print response */
35
22
  export declare function runAndPrint(message: string, options?: AgentOptions): Promise<void>;
36
23
  //# sourceMappingURL=agent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAkBA,OAAO,EAA0B,KAAK,cAAc,EAAE,MAAM,cAAc,CAAA;AAO1E,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAA;CAC1E;AA2DD;;;;;;;;;GASG;AACH,wBAAsB,QAAQ,CAC5B,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,aAAa,CAAC,CAkMxB;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,IAAI,CAAC,CAef"}
1
+ {"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAuBA,OAAO,EAA0B,KAAK,cAAc,EAAE,MAAM,cAAc,CAAA;AAO1E,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAA;CAC1E;AA6MD,wBAAsB,QAAQ,CAC5B,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,aAAa,CAAC,CAwJxB;AAED,6CAA6C;AAC7C,wBAAsB,WAAW,CAC/B,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,IAAI,CAAC,CAef"}
package/dist/agent.js CHANGED
@@ -6,101 +6,186 @@
6
6
  // 2. Context batching: gather all relevant context before the first API call
7
7
  // 3. One-shot prompting: send rich context so the agent gets it right in one try
8
8
  // 4. Tool execution is always local and free — only reasoning burns tokens
9
- // 5. Smart model selection: use Haiku for simple tasks, Sonnet for complex ones
10
- import { getApiKey, getApiBase, isByokEnabled, getByokKey, getAnthropicUrl } from './auth.js';
9
+ // 5. Smart model selection: use fast model for simple tasks, default for complex
10
+ import { getApiKey, getApiBase, isByokEnabled, getByokKey, getByokProvider, getProviderModel, getProvider, estimateCost, } from './auth.js';
11
11
  import { executeTool, getTool, getToolDefinitionsForApi, } from './tools/index.js';
12
12
  import { formatContextForPrompt } from './context.js';
13
13
  import { getMemoryPrompt, addTurn, getPreviousMessages } from './memory.js';
14
14
  import { createSpinner, printToolCall, printToolResult, printResponse, printError, printInfo } from './ui.js';
15
- const MAX_TOOL_LOOPS = 15; // Safety: prevent infinite tool loops
16
- const KBOT_VERSION = '1.0.0';
17
- /**
18
- * LOCAL-FIRST: Try to handle the request without hitting the API at all.
19
- * This saves tokens and messages for things that don't need AI reasoning.
20
- */
15
+ const MAX_TOOL_LOOPS = 15;
16
+ const KBOT_VERSION = '1.2.0';
17
+ // ── Local-first execution ──
21
18
  async function tryLocalFirst(message) {
22
19
  const lower = message.toLowerCase().trim();
23
- // Direct file read requests
24
20
  const readMatch = lower.match(/^(?:read|show|cat|view|open)\s+(.+)$/i);
25
21
  if (readMatch) {
26
22
  const tool = getTool('read_file');
27
- if (tool) {
28
- const result = await tool.execute({ path: readMatch[1].trim() });
29
- return result;
30
- }
23
+ if (tool)
24
+ return tool.execute({ path: readMatch[1].trim() });
31
25
  }
32
- // ls / list directory
33
26
  if (/^(?:ls|list|dir)\s*(.*)$/i.test(lower)) {
34
27
  const match = lower.match(/^(?:ls|list|dir)\s*(.*)$/i);
35
28
  const tool = getTool('list_directory');
36
29
  if (tool)
37
30
  return tool.execute({ path: match?.[1]?.trim() || '.' });
38
31
  }
39
- // git status
40
32
  if (/^(?:git\s+)?status$/i.test(lower)) {
41
33
  const tool = getTool('git_status');
42
34
  if (tool)
43
35
  return tool.execute({});
44
36
  }
45
- // git diff
46
37
  if (/^(?:git\s+)?diff$/i.test(lower)) {
47
38
  const tool = getTool('git_diff');
48
39
  if (tool)
49
40
  return tool.execute({});
50
41
  }
51
- // git log
52
42
  if (/^(?:git\s+)?log$/i.test(lower)) {
53
43
  const tool = getTool('git_log');
54
44
  if (tool)
55
45
  return tool.execute({});
56
46
  }
57
- // Simple grep/search
58
- const grepMatch = lower.match(/^(?:grep|search|find)\s+['""]?(.+?)['""]?\s+(?:in\s+)?(.+)$/i);
47
+ const grepMatch = lower.match(/^(?:grep|search|find)\s+['"""]?(.+?)['"""]?\s+(?:in\s+)?(.+)$/i);
59
48
  if (grepMatch) {
60
49
  const tool = getTool('grep');
61
50
  if (tool)
62
51
  return tool.execute({ pattern: grepMatch[1], path: grepMatch[2].trim() });
63
52
  }
64
- // pwd
65
53
  if (lower === 'pwd' || lower === 'where am i') {
66
54
  return process.cwd();
67
55
  }
68
- return null; // Not a local-only request — needs API
56
+ return null;
69
57
  }
70
- /**
71
- * Run the agent loop for a single user message.
72
- * Returns the final text response.
73
- *
74
- * Flow:
75
- * 1. Try local-first (free, instant) — handles file reads, git, ls
76
- * 2. If needs reasoning, send to Kernel API with rich context
77
- * 3. Execute any tool calls locally (free)
78
- * 4. Send results back to API if needed (costs 1 more message)
58
+ /** Anthropic Messages API (Claude) */
59
+ async function callAnthropic(apiKey, apiUrl, model, systemContext, messages) {
60
+ const res = await fetch(apiUrl, {
61
+ method: 'POST',
62
+ headers: {
63
+ 'Content-Type': 'application/json',
64
+ 'x-api-key': apiKey,
65
+ 'anthropic-version': '2023-06-01',
66
+ },
67
+ body: JSON.stringify({
68
+ model,
69
+ max_tokens: 8192,
70
+ system: systemContext || undefined,
71
+ messages: messages.map(m => ({ role: m.role, content: m.content })),
72
+ }),
73
+ });
74
+ if (!res.ok) {
75
+ const err = await res.json().catch(() => ({ error: { message: `HTTP ${res.status}` } }));
76
+ throw new Error(err.error?.message || `Anthropic error: ${res.status}`);
77
+ }
78
+ const data = await res.json();
79
+ const text = (data.content || []).filter((b) => b.type === 'text').map((b) => b.text).join('');
80
+ const u = data.usage || {};
81
+ return { content: text, model: data.model, usage: { input_tokens: u.input_tokens || 0, output_tokens: u.output_tokens || 0 } };
82
+ }
83
+ /** OpenAI-compatible Chat Completions API
84
+ * Works with: OpenAI, Mistral, xAI, DeepSeek, Groq, Together, Fireworks, Perplexity
79
85
  */
86
+ async function callOpenAICompat(apiKey, apiUrl, model, systemContext, messages) {
87
+ const apiMessages = [];
88
+ if (systemContext)
89
+ apiMessages.push({ role: 'system', content: systemContext });
90
+ apiMessages.push(...messages.map(m => ({ role: m.role, content: m.content })));
91
+ const res = await fetch(apiUrl, {
92
+ method: 'POST',
93
+ headers: {
94
+ 'Content-Type': 'application/json',
95
+ 'Authorization': `Bearer ${apiKey}`,
96
+ },
97
+ body: JSON.stringify({ model, max_tokens: 8192, messages: apiMessages }),
98
+ });
99
+ if (!res.ok) {
100
+ const err = await res.json().catch(() => ({ error: { message: `HTTP ${res.status}` } }));
101
+ throw new Error(err.error?.message || `API error: ${res.status}`);
102
+ }
103
+ const data = await res.json();
104
+ const content = data.choices?.[0]?.message?.content || '';
105
+ const u = data.usage || {};
106
+ return { content, model: data.model || model, usage: { input_tokens: u.prompt_tokens || 0, output_tokens: u.completion_tokens || 0 } };
107
+ }
108
+ /** Google Gemini API */
109
+ async function callGemini(apiKey, apiUrl, model, systemContext, messages) {
110
+ const contents = messages.map(m => ({
111
+ role: m.role === 'assistant' ? 'model' : 'user',
112
+ parts: [{ text: m.content }],
113
+ }));
114
+ const body = {
115
+ contents,
116
+ generationConfig: { maxOutputTokens: 8192 },
117
+ };
118
+ if (systemContext) {
119
+ body.systemInstruction = { parts: [{ text: systemContext }] };
120
+ }
121
+ const res = await fetch(`${apiUrl}/${model}:generateContent?key=${apiKey}`, {
122
+ method: 'POST',
123
+ headers: { 'Content-Type': 'application/json' },
124
+ body: JSON.stringify(body),
125
+ });
126
+ if (!res.ok) {
127
+ const err = await res.json().catch(() => ({ error: { message: `HTTP ${res.status}` } }));
128
+ throw new Error(err.error?.message || `Gemini error: ${res.status}`);
129
+ }
130
+ const data = await res.json();
131
+ const content = data.candidates?.[0]?.content?.parts?.map((p) => p.text)?.join('') || '';
132
+ const um = data.usageMetadata || {};
133
+ return { content, model, usage: { input_tokens: um.promptTokenCount || 0, output_tokens: um.candidatesTokenCount || 0 } };
134
+ }
135
+ /** Cohere Chat API (v2) */
136
+ async function callCohere(apiKey, apiUrl, model, systemContext, messages) {
137
+ const apiMessages = [];
138
+ if (systemContext)
139
+ apiMessages.push({ role: 'system', content: systemContext });
140
+ apiMessages.push(...messages.map(m => ({ role: m.role, content: m.content })));
141
+ const res = await fetch(apiUrl, {
142
+ method: 'POST',
143
+ headers: {
144
+ 'Content-Type': 'application/json',
145
+ 'Authorization': `Bearer ${apiKey}`,
146
+ },
147
+ body: JSON.stringify({ model, messages: apiMessages, max_tokens: 8192 }),
148
+ });
149
+ if (!res.ok) {
150
+ const err = await res.json().catch(() => ({ error: { message: `HTTP ${res.status}` } }));
151
+ throw new Error(err.error?.message || `Cohere error: ${res.status}`);
152
+ }
153
+ const data = await res.json();
154
+ const content = data.message?.content?.[0]?.text || '';
155
+ const u = data.usage?.tokens || {};
156
+ return { content, model, usage: { input_tokens: u.input_tokens || 0, output_tokens: u.output_tokens || 0 } };
157
+ }
158
+ /** Universal provider call — routes to the right API format */
159
+ async function callProvider(provider, apiKey, model, systemContext, messages) {
160
+ const p = getProvider(provider);
161
+ switch (p.apiStyle) {
162
+ case 'anthropic': return callAnthropic(apiKey, p.apiUrl, model, systemContext, messages);
163
+ case 'google': return callGemini(apiKey, p.apiUrl, model, systemContext, messages);
164
+ case 'cohere': return callCohere(apiKey, p.apiUrl, model, systemContext, messages);
165
+ case 'openai': return callOpenAICompat(apiKey, p.apiUrl, model, systemContext, messages);
166
+ default: return callOpenAICompat(apiKey, p.apiUrl, model, systemContext, messages);
167
+ }
168
+ }
169
+ // ── Main agent loop ──
80
170
  export async function runAgent(message, options = {}) {
81
171
  const byokMode = isByokEnabled();
82
172
  const apiKey = byokMode ? getByokKey() : getApiKey();
83
173
  if (!apiKey) {
84
174
  throw new Error(byokMode
85
- ? 'No Anthropic API key configured. Run `kbot byok` to set up.'
175
+ ? 'No LLM API key configured. Run `kbot byok` to set up.'
86
176
  : 'No API key configured. Run `kbot auth` to set up.');
87
177
  }
88
- // Step 1: Try local-first — handle without API if possible
178
+ // Step 1: Local-first
89
179
  const localResult = await tryLocalFirst(message);
90
180
  if (localResult !== null) {
91
181
  addTurn({ role: 'user', content: message });
92
182
  addTurn({ role: 'assistant', content: localResult });
93
183
  printInfo('(handled locally — 0 tokens used)');
94
- return {
95
- content: localResult,
96
- agent: 'local',
97
- model: 'none',
98
- toolCalls: 0,
99
- };
184
+ return { content: localResult, agent: 'local', model: 'none', toolCalls: 0 };
100
185
  }
101
186
  const tier = options.tier || 'free';
102
187
  const tools = getToolDefinitionsForApi(tier);
103
- // Step 2: Build rich context for one-shot success
188
+ // Step 2: Build context
104
189
  const contextSnippet = options.context ? formatContextForPrompt(options.context) : '';
105
190
  const memorySnippet = getMemoryPrompt();
106
191
  const efficiencyNote = `[K:BOT Efficiency Note]
@@ -112,67 +197,41 @@ Only use web_search when the user explicitly asks for current information.`;
112
197
  let toolCallCount = 0;
113
198
  let lastResponse = null;
114
199
  let pendingToolResults = [];
115
- // The loop: send message → get response → if tool_calls, execute and loop
116
200
  for (let i = 0; i < MAX_TOOL_LOOPS; i++) {
117
201
  const spinner = createSpinner(i === 0 ? 'Thinking...' : `Running tools (${toolCallCount})...`);
118
202
  spinner.start();
119
203
  try {
120
- let res;
121
204
  if (byokMode) {
122
- // ── BYOK MODE: Call Anthropic directly ──
123
- // User pays their own token costs. Kernel routing + tools are free.
124
- const model = options.model === 'haiku' ? 'claude-haiku-4-5-20251001' : 'claude-sonnet-4-6';
205
+ // ── BYOK: Call provider directly ──
206
+ const provider = getByokProvider();
207
+ const speed = options.model === 'haiku' || options.model === 'fast' ? 'fast' : 'default';
208
+ const model = getProviderModel(provider, speed);
125
209
  const messages = [
126
210
  ...getPreviousMessages(),
127
211
  { role: 'user', content: i === 0 ? (systemContext ? `${systemContext}\n\n${message}` : message) : message },
128
212
  ];
129
- // Append tool results as user messages
130
213
  if (pendingToolResults.length > 0) {
131
214
  for (const tr of pendingToolResults) {
132
215
  messages.push({ role: 'user', content: `[Tool Result for ${tr.tool_call_id}]: ${tr.result}` });
133
216
  }
134
217
  pendingToolResults = [];
135
218
  }
136
- res = await fetch(getAnthropicUrl(), {
137
- method: 'POST',
138
- headers: {
139
- 'Content-Type': 'application/json',
140
- 'x-api-key': apiKey,
141
- 'anthropic-version': '2023-06-01',
142
- },
143
- body: JSON.stringify({
144
- model,
145
- max_tokens: 8192,
146
- system: systemContext || undefined,
147
- messages: messages.map(m => ({ role: m.role, content: m.content })),
148
- }),
149
- });
150
219
  spinner.stop();
151
- if (!res.ok) {
152
- const err = await res.json().catch(() => ({ error: { message: `HTTP ${res.status}` } }));
153
- throw new Error(err.error?.message || `Anthropic API error: ${res.status}`);
154
- }
155
- // Parse Anthropic response format → normalize to kernel-api format
156
- const anthropicData = await res.json();
157
- const textContent = (anthropicData.content || [])
158
- .filter((b) => b.type === 'text')
159
- .map((b) => b.text)
160
- .join('');
161
- const anthropicUsage = anthropicData.usage || {};
220
+ const result = await callProvider(provider, apiKey, model, systemContext, messages);
162
221
  lastResponse = {
163
222
  type: 'text',
164
223
  agent: options.agent || 'kernel',
165
- model: anthropicData.model,
166
- content: textContent,
224
+ model: result.model,
225
+ content: result.content,
167
226
  usage: {
168
- input_tokens: anthropicUsage.input_tokens || 0,
169
- output_tokens: anthropicUsage.output_tokens || 0,
170
- cost_usd: ((anthropicUsage.input_tokens || 0) * 3.0 / 1_000_000) + ((anthropicUsage.output_tokens || 0) * 15.0 / 1_000_000),
227
+ input_tokens: result.usage.input_tokens,
228
+ output_tokens: result.usage.output_tokens,
229
+ cost_usd: estimateCost(provider, result.usage.input_tokens, result.usage.output_tokens),
171
230
  },
172
231
  };
173
232
  }
174
233
  else {
175
- // ── KERNEL API MODE: Route through Kernel Matrix ──
234
+ // ── Kernel API: Route through Matrix ──
176
235
  const apiBase = getApiBase();
177
236
  const body = {
178
237
  message: i === 0 ? (systemContext ? `${systemContext}\n\n${message}` : message) : message,
@@ -181,14 +240,13 @@ Only use web_search when the user explicitly asks for current information.`;
181
240
  previous_messages: getPreviousMessages(),
182
241
  tools: tools.length > 0 ? tools : undefined,
183
242
  };
184
- if (options.agent && options.agent !== 'auto') {
243
+ if (options.agent && options.agent !== 'auto')
185
244
  body.agent = options.agent;
186
- }
187
245
  if (pendingToolResults.length > 0) {
188
246
  body.tool_results = pendingToolResults;
189
247
  pendingToolResults = [];
190
248
  }
191
- res = await fetch(`${apiBase}/chat`, {
249
+ const res = await fetch(`${apiBase}/chat`, {
192
250
  method: 'POST',
193
251
  headers: {
194
252
  'Content-Type': 'application/json',
@@ -203,8 +261,8 @@ Only use web_search when the user explicitly asks for current information.`;
203
261
  throw new Error(err.error || `API error: ${res.status}`);
204
262
  }
205
263
  lastResponse = await res.json();
206
- } // end kernel-api mode
207
- // If it's a text response, we're done
264
+ }
265
+ // Text response done
208
266
  if (lastResponse.type === 'text' || !lastResponse.tool_calls || lastResponse.tool_calls.length === 0) {
209
267
  const content = lastResponse.content || '';
210
268
  addTurn({ role: 'user', content: message });
@@ -217,7 +275,7 @@ Only use web_search when the user explicitly asks for current information.`;
217
275
  usage: lastResponse.usage,
218
276
  };
219
277
  }
220
- // Tool calls execute them locally
278
+ // Tool calls execute locally
221
279
  const toolCalls = lastResponse.tool_calls;
222
280
  const results = [];
223
281
  for (const call of toolCalls) {
@@ -227,9 +285,7 @@ Only use web_search when the user explicitly asks for current information.`;
227
285
  results.push(result);
228
286
  printToolResult(result.result, result.error);
229
287
  }
230
- // Set up for next iteration with tool results
231
288
  pendingToolResults = results;
232
- // Update message to continue the conversation
233
289
  message = `Here are the tool results:\n${results.map(r => `[${r.tool_call_id}]: ${r.result}`).join('\n\n')}\n\nContinue based on these results.`;
234
290
  }
235
291
  catch (err) {
@@ -237,7 +293,6 @@ Only use web_search when the user explicitly asks for current information.`;
237
293
  throw err;
238
294
  }
239
295
  }
240
- // If we hit the loop limit, return whatever we have
241
296
  const content = lastResponse?.content || 'Reached maximum tool iterations.';
242
297
  return {
243
298
  content,
@@ -247,10 +302,7 @@ Only use web_search when the user explicitly asks for current information.`;
247
302
  usage: lastResponse?.usage,
248
303
  };
249
304
  }
250
- /**
251
- * One-shot: run agent and print the response.
252
- * Used for `kbot "do something"` inline mode.
253
- */
305
+ /** One-shot: run agent and print response */
254
306
  export async function runAndPrint(message, options = {}) {
255
307
  try {
256
308
  const response = await runAgent(message, options);
package/dist/agent.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
package/dist/auth.d.ts CHANGED
@@ -1,6 +1,18 @@
1
1
  declare const KBOT_DIR: string;
2
2
  declare const CONFIG_PATH: string;
3
3
  declare const API_BASE = "https://eoxxpyixdieprsxlpwcs.supabase.co/functions/v1/kernel-api";
4
+ export type ByokProvider = 'anthropic' | 'openai' | 'google' | 'mistral' | 'xai' | 'deepseek' | 'groq' | 'together' | 'fireworks' | 'perplexity' | 'cohere';
5
+ export interface ProviderConfig {
6
+ name: string;
7
+ apiUrl: string;
8
+ apiStyle: 'anthropic' | 'openai' | 'google' | 'cohere';
9
+ defaultModel: string;
10
+ fastModel: string;
11
+ inputCost: number;
12
+ outputCost: number;
13
+ authHeader: 'x-api-key' | 'bearer';
14
+ }
15
+ export declare const PROVIDERS: Record<ByokProvider, ProviderConfig>;
4
16
  export interface KbotConfig {
5
17
  api_key: string;
6
18
  default_model: 'auto' | 'sonnet' | 'haiku';
@@ -10,6 +22,7 @@ export interface KbotConfig {
10
22
  monthly_limit?: number;
11
23
  byok_key?: string;
12
24
  byok_enabled?: boolean;
25
+ byok_provider?: ByokProvider;
13
26
  }
14
27
  export declare function loadConfig(): KbotConfig | null;
15
28
  export declare function saveConfig(config: KbotConfig): void;
@@ -17,17 +30,28 @@ export declare function getApiKey(): string | null;
17
30
  export declare function getApiBase(): string;
18
31
  export declare function getDefaultModel(): string;
19
32
  export declare function getDefaultAgent(): string;
20
- /** Check if BYOK mode is enabled */
33
+ /** Detect provider from API key prefix. Returns null if ambiguous. */
34
+ export declare function detectProvider(key: string): ByokProvider | null;
35
+ /** Check if BYOK mode is enabled (via env var or config) */
21
36
  export declare function isByokEnabled(): boolean;
22
- /** Get the Anthropic API key for BYOK mode */
37
+ /** Get the active BYOK provider */
38
+ export declare function getByokProvider(): ByokProvider;
39
+ /** Get the BYOK API key */
23
40
  export declare function getByokKey(): string | null;
24
- /** Get the Anthropic API URL */
41
+ /** Get provider config */
42
+ export declare function getProvider(provider: ByokProvider): ProviderConfig;
43
+ /** Get model name for provider */
44
+ export declare function getProviderModel(provider: ByokProvider, speed: 'default' | 'fast'): string;
45
+ /** Get the provider API URL */
46
+ export declare function getProviderUrl(provider: ByokProvider): string;
47
+ /** Estimate cost */
48
+ export declare function estimateCost(provider: ByokProvider, inputTokens: number, outputTokens: number): number;
25
49
  export declare function getAnthropicUrl(): string;
26
- /** Set up BYOK mode with an Anthropic API key */
27
- export declare function setupByok(anthropicKey: string): Promise<boolean>;
28
- /** Disable BYOK mode (switch back to Kernel API key) */
50
+ /** Set up BYOK mode with any supported provider key */
51
+ export declare function setupByok(key: string, provider?: ByokProvider): Promise<boolean>;
52
+ /** Disable BYOK mode */
29
53
  export declare function disableByok(): void;
30
- /** Verify a Kernel API key. Returns tier info or error. */
54
+ /** Verify a Kernel API key */
31
55
  export declare function verifyApiKey(key: string): Promise<{
32
56
  valid: boolean;
33
57
  tier?: string;
@@ -38,7 +62,7 @@ export declare function verifyApiKey(key: string): Promise<{
38
62
  }>;
39
63
  error?: string;
40
64
  }>;
41
- /** Get usage stats for current Kernel API key */
65
+ /** Get usage stats */
42
66
  export declare function getUsageStats(): Promise<{
43
67
  tier: string;
44
68
  monthly_messages: {
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAWA,QAAA,MAAM,QAAQ,QAA2B,CAAA;AACzC,QAAA,MAAM,WAAW,QAAgC,CAAA;AACjD,QAAA,MAAM,QAAQ,qEAAqE,CAAA;AAGnF,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAA;IAC1C,aAAa,EAAE,MAAM,GAAG,MAAM,CAAA;IAC9B,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,aAAa,CAAC,EAAE,MAAM,CAAA;IAEtB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB;AAYD,wBAAgB,UAAU,IAAI,UAAU,GAAG,IAAI,CAQ9C;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAGnD;AAED,wBAAgB,SAAS,IAAI,MAAM,GAAG,IAAI,CAKzC;AAED,wBAAgB,UAAU,IAAI,MAAM,CAGnC;AAED,wBAAgB,eAAe,IAAI,MAAM,CAGxC;AAED,wBAAgB,eAAe,IAAI,MAAM,CAGxC;AAED,oCAAoC;AACpC,wBAAgB,aAAa,IAAI,OAAO,CAKvC;AAED,8CAA8C;AAC9C,wBAAgB,UAAU,IAAI,MAAM,GAAG,IAAI,CAK1C;AAED,gCAAgC;AAChC,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,iDAAiD;AACjD,wBAAsB,SAAS,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAqCtE;AAED,wDAAwD;AACxD,wBAAgB,WAAW,IAAI,IAAI,CAMlC;AAED,2DAA2D;AAC3D,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvD,KAAK,EAAE,OAAO,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC1D,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAC,CAcD;AAED,iDAAiD;AACjD,wBAAsB,aAAa,IAAI,OAAO,CAAC;IAC7C,IAAI,EAAE,MAAM,CAAA;IACZ,gBAAgB,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IAClD,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAChD,GAAG,IAAI,CAAC,CAaR;AAED,2BAA2B;AAC3B,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAehE;AAED,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAA"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
package/dist/auth.js CHANGED
@@ -3,14 +3,127 @@
3
3
  //
4
4
  // Supports two modes:
5
5
  // 1. Kernel API key (kn_live_...) — uses Kernel's routing + agents, message-based billing
6
- // 2. BYOK (Bring Your Own Key) — user's own Anthropic key, still gets Kernel routing for free
6
+ // 2. BYOK (Bring Your Own Key) — user's own LLM key, still gets Kernel routing for free
7
+ // Supported: Anthropic, OpenAI, Google, Mistral, xAI (Grok), DeepSeek,
8
+ // Groq, Together AI, Fireworks, Perplexity, Cohere
7
9
  import { homedir } from 'node:os';
8
10
  import { join } from 'node:path';
9
11
  import { mkdirSync, readFileSync, writeFileSync, existsSync } from 'node:fs';
10
12
  const KBOT_DIR = join(homedir(), '.kbot');
11
13
  const CONFIG_PATH = join(KBOT_DIR, 'config.json');
12
14
  const API_BASE = 'https://eoxxpyixdieprsxlpwcs.supabase.co/functions/v1/kernel-api';
13
- const ANTHROPIC_API_URL = 'https://api.anthropic.com/v1/messages';
15
+ export const PROVIDERS = {
16
+ anthropic: {
17
+ name: 'Anthropic (Claude)',
18
+ apiUrl: 'https://api.anthropic.com/v1/messages',
19
+ apiStyle: 'anthropic',
20
+ defaultModel: 'claude-sonnet-4-6',
21
+ fastModel: 'claude-haiku-4-5-20251001',
22
+ inputCost: 3.0,
23
+ outputCost: 15.0,
24
+ authHeader: 'x-api-key',
25
+ },
26
+ openai: {
27
+ name: 'OpenAI (GPT)',
28
+ apiUrl: 'https://api.openai.com/v1/chat/completions',
29
+ apiStyle: 'openai',
30
+ defaultModel: 'gpt-4o',
31
+ fastModel: 'gpt-4o-mini',
32
+ inputCost: 2.5,
33
+ outputCost: 10.0,
34
+ authHeader: 'bearer',
35
+ },
36
+ google: {
37
+ name: 'Google (Gemini)',
38
+ apiUrl: 'https://generativelanguage.googleapis.com/v1beta/models',
39
+ apiStyle: 'google',
40
+ defaultModel: 'gemini-2.5-flash',
41
+ fastModel: 'gemini-2.0-flash',
42
+ inputCost: 0.15,
43
+ outputCost: 0.60,
44
+ authHeader: 'bearer', // uses ?key= param instead
45
+ },
46
+ mistral: {
47
+ name: 'Mistral AI',
48
+ apiUrl: 'https://api.mistral.ai/v1/chat/completions',
49
+ apiStyle: 'openai',
50
+ defaultModel: 'mistral-large-latest',
51
+ fastModel: 'mistral-small-latest',
52
+ inputCost: 2.0,
53
+ outputCost: 6.0,
54
+ authHeader: 'bearer',
55
+ },
56
+ xai: {
57
+ name: 'xAI (Grok)',
58
+ apiUrl: 'https://api.x.ai/v1/chat/completions',
59
+ apiStyle: 'openai',
60
+ defaultModel: 'grok-3',
61
+ fastModel: 'grok-3-mini',
62
+ inputCost: 3.0,
63
+ outputCost: 15.0,
64
+ authHeader: 'bearer',
65
+ },
66
+ deepseek: {
67
+ name: 'DeepSeek',
68
+ apiUrl: 'https://api.deepseek.com/chat/completions',
69
+ apiStyle: 'openai',
70
+ defaultModel: 'deepseek-chat',
71
+ fastModel: 'deepseek-chat',
72
+ inputCost: 0.27,
73
+ outputCost: 1.10,
74
+ authHeader: 'bearer',
75
+ },
76
+ groq: {
77
+ name: 'Groq',
78
+ apiUrl: 'https://api.groq.com/openai/v1/chat/completions',
79
+ apiStyle: 'openai',
80
+ defaultModel: 'llama-3.3-70b-versatile',
81
+ fastModel: 'llama-3.1-8b-instant',
82
+ inputCost: 0.59,
83
+ outputCost: 0.79,
84
+ authHeader: 'bearer',
85
+ },
86
+ together: {
87
+ name: 'Together AI',
88
+ apiUrl: 'https://api.together.xyz/v1/chat/completions',
89
+ apiStyle: 'openai',
90
+ defaultModel: 'meta-llama/Llama-3.3-70B-Instruct-Turbo',
91
+ fastModel: 'meta-llama/Llama-3.1-8B-Instruct-Turbo',
92
+ inputCost: 0.88,
93
+ outputCost: 0.88,
94
+ authHeader: 'bearer',
95
+ },
96
+ fireworks: {
97
+ name: 'Fireworks AI',
98
+ apiUrl: 'https://api.fireworks.ai/inference/v1/chat/completions',
99
+ apiStyle: 'openai',
100
+ defaultModel: 'accounts/fireworks/models/llama-v3p3-70b-instruct',
101
+ fastModel: 'accounts/fireworks/models/llama-v3p1-8b-instruct',
102
+ inputCost: 0.90,
103
+ outputCost: 0.90,
104
+ authHeader: 'bearer',
105
+ },
106
+ perplexity: {
107
+ name: 'Perplexity',
108
+ apiUrl: 'https://api.perplexity.ai/chat/completions',
109
+ apiStyle: 'openai',
110
+ defaultModel: 'sonar-pro',
111
+ fastModel: 'sonar',
112
+ inputCost: 3.0,
113
+ outputCost: 15.0,
114
+ authHeader: 'bearer',
115
+ },
116
+ cohere: {
117
+ name: 'Cohere',
118
+ apiUrl: 'https://api.cohere.com/v2/chat',
119
+ apiStyle: 'cohere',
120
+ defaultModel: 'command-r-plus',
121
+ fastModel: 'command-r',
122
+ inputCost: 2.5,
123
+ outputCost: 10.0,
124
+ authHeader: 'bearer',
125
+ },
126
+ };
14
127
  function ensureDir() {
15
128
  if (!existsSync(KBOT_DIR)) {
16
129
  mkdirSync(KBOT_DIR, { recursive: true });
@@ -56,64 +169,193 @@ export function getDefaultAgent() {
56
169
  const config = loadConfig();
57
170
  return config?.default_agent || 'auto';
58
171
  }
59
- /** Check if BYOK mode is enabled */
172
+ // ── Key prefix provider detection ──
173
+ const KEY_PREFIXES = [
174
+ { prefix: 'sk-ant-', provider: 'anthropic' },
175
+ { prefix: 'sk-proj-', provider: 'openai' }, // OpenAI project keys
176
+ { prefix: 'sk-or-', provider: 'openai' }, // OpenAI org keys
177
+ { prefix: 'AIza', provider: 'google' },
178
+ { prefix: 'gsk_', provider: 'groq' },
179
+ { prefix: 'pplx-', provider: 'perplexity' },
180
+ { prefix: 'xai-', provider: 'xai' },
181
+ { prefix: 'dsk-', provider: 'deepseek' }, // Some DeepSeek keys
182
+ { prefix: 'fw_', provider: 'fireworks' },
183
+ // sk- is last because it's the most generic (OpenAI, Mistral, Together, etc.)
184
+ // These providers all use sk- so we can't distinguish them by prefix alone
185
+ ];
186
+ /** Detect provider from API key prefix. Returns null if ambiguous. */
187
+ export function detectProvider(key) {
188
+ for (const { prefix, provider } of KEY_PREFIXES) {
189
+ if (key.startsWith(prefix))
190
+ return provider;
191
+ }
192
+ // Generic sk- keys could be OpenAI, Mistral, Together, or others
193
+ if (key.startsWith('sk-'))
194
+ return 'openai';
195
+ return null;
196
+ }
197
+ // ── ENV var → provider mapping ──
198
+ const ENV_KEYS = [
199
+ { env: 'ANTHROPIC_API_KEY', provider: 'anthropic' },
200
+ { env: 'OPENAI_API_KEY', provider: 'openai' },
201
+ { env: 'GOOGLE_API_KEY', provider: 'google' },
202
+ { env: 'MISTRAL_API_KEY', provider: 'mistral' },
203
+ { env: 'XAI_API_KEY', provider: 'xai' },
204
+ { env: 'DEEPSEEK_API_KEY', provider: 'deepseek' },
205
+ { env: 'GROQ_API_KEY', provider: 'groq' },
206
+ { env: 'TOGETHER_API_KEY', provider: 'together' },
207
+ { env: 'FIREWORKS_API_KEY', provider: 'fireworks' },
208
+ { env: 'PERPLEXITY_API_KEY', provider: 'perplexity' },
209
+ { env: 'COHERE_API_KEY', provider: 'cohere' },
210
+ ];
211
+ /** Check if BYOK mode is enabled (via env var or config) */
60
212
  export function isByokEnabled() {
61
- const envKey = process.env.ANTHROPIC_API_KEY;
62
- if (envKey)
63
- return true;
213
+ for (const { env } of ENV_KEYS) {
214
+ if (process.env[env])
215
+ return true;
216
+ }
64
217
  const config = loadConfig();
65
218
  return config?.byok_enabled === true && !!config?.byok_key;
66
219
  }
67
- /** Get the Anthropic API key for BYOK mode */
220
+ /** Get the active BYOK provider */
221
+ export function getByokProvider() {
222
+ for (const { env, provider } of ENV_KEYS) {
223
+ if (process.env[env])
224
+ return provider;
225
+ }
226
+ const config = loadConfig();
227
+ return config?.byok_provider || 'anthropic';
228
+ }
229
+ /** Get the BYOK API key */
68
230
  export function getByokKey() {
69
- const envKey = process.env.ANTHROPIC_API_KEY;
70
- if (envKey)
71
- return envKey;
231
+ for (const { env } of ENV_KEYS) {
232
+ const val = process.env[env];
233
+ if (val)
234
+ return val;
235
+ }
72
236
  const config = loadConfig();
73
237
  return config?.byok_key || null;
74
238
  }
75
- /** Get the Anthropic API URL */
239
+ /** Get provider config */
240
+ export function getProvider(provider) {
241
+ return PROVIDERS[provider];
242
+ }
243
+ /** Get model name for provider */
244
+ export function getProviderModel(provider, speed) {
245
+ const p = PROVIDERS[provider];
246
+ return speed === 'fast' ? p.fastModel : p.defaultModel;
247
+ }
248
+ /** Get the provider API URL */
249
+ export function getProviderUrl(provider) {
250
+ return PROVIDERS[provider].apiUrl;
251
+ }
252
+ /** Estimate cost */
253
+ export function estimateCost(provider, inputTokens, outputTokens) {
254
+ const p = PROVIDERS[provider];
255
+ return (inputTokens * p.inputCost / 1_000_000) + (outputTokens * p.outputCost / 1_000_000);
256
+ }
257
+ // Legacy alias
76
258
  export function getAnthropicUrl() {
77
- return ANTHROPIC_API_URL;
259
+ return PROVIDERS.anthropic.apiUrl;
78
260
  }
79
- /** Set up BYOK mode with an Anthropic API key */
80
- export async function setupByok(anthropicKey) {
81
- // Verify the key works with a minimal request
261
+ /** Verify a BYOK key by making a minimal test request */
262
+ async function verifyByokKey(key, provider) {
263
+ const p = PROVIDERS[provider];
82
264
  try {
83
- const res = await fetch(ANTHROPIC_API_URL, {
265
+ if (p.apiStyle === 'anthropic') {
266
+ const res = await fetch(p.apiUrl, {
267
+ method: 'POST',
268
+ headers: {
269
+ 'Content-Type': 'application/json',
270
+ 'x-api-key': key,
271
+ 'anthropic-version': '2023-06-01',
272
+ },
273
+ body: JSON.stringify({
274
+ model: p.fastModel,
275
+ max_tokens: 16,
276
+ messages: [{ role: 'user', content: 'hi' }],
277
+ }),
278
+ });
279
+ if (!res.ok)
280
+ return false;
281
+ await res.json();
282
+ return true;
283
+ }
284
+ if (p.apiStyle === 'google') {
285
+ const res = await fetch(`${p.apiUrl}/${p.fastModel}:generateContent?key=${key}`, {
286
+ method: 'POST',
287
+ headers: { 'Content-Type': 'application/json' },
288
+ body: JSON.stringify({
289
+ contents: [{ parts: [{ text: 'hi' }] }],
290
+ generationConfig: { maxOutputTokens: 16 },
291
+ }),
292
+ });
293
+ if (!res.ok)
294
+ return false;
295
+ await res.json();
296
+ return true;
297
+ }
298
+ if (p.apiStyle === 'cohere') {
299
+ const res = await fetch(p.apiUrl, {
300
+ method: 'POST',
301
+ headers: {
302
+ 'Content-Type': 'application/json',
303
+ 'Authorization': `Bearer ${key}`,
304
+ },
305
+ body: JSON.stringify({
306
+ model: p.fastModel,
307
+ messages: [{ role: 'user', content: 'hi' }],
308
+ max_tokens: 16,
309
+ }),
310
+ });
311
+ if (!res.ok)
312
+ return false;
313
+ await res.json();
314
+ return true;
315
+ }
316
+ // OpenAI-compatible (openai, mistral, xai, deepseek, groq, together, fireworks, perplexity)
317
+ const res = await fetch(p.apiUrl, {
84
318
  method: 'POST',
85
319
  headers: {
86
320
  'Content-Type': 'application/json',
87
- 'x-api-key': anthropicKey,
88
- 'anthropic-version': '2023-06-01',
321
+ 'Authorization': `Bearer ${key}`,
89
322
  },
90
323
  body: JSON.stringify({
91
- model: 'claude-haiku-4-5-20251001',
324
+ model: p.fastModel,
92
325
  max_tokens: 16,
93
326
  messages: [{ role: 'user', content: 'hi' }],
94
327
  }),
95
328
  });
96
- if (!res.ok) {
329
+ if (!res.ok)
97
330
  return false;
98
- }
99
- // Consume the response
100
331
  await res.json();
332
+ return true;
101
333
  }
102
334
  catch {
103
335
  return false;
104
336
  }
337
+ }
338
+ /** Set up BYOK mode with any supported provider key */
339
+ export async function setupByok(key, provider) {
340
+ const detectedProvider = provider || detectProvider(key);
341
+ if (!detectedProvider)
342
+ return false;
343
+ const valid = await verifyByokKey(key, detectedProvider);
344
+ if (!valid)
345
+ return false;
105
346
  const config = loadConfig() || {
106
347
  api_key: '',
107
348
  default_model: 'auto',
108
349
  default_agent: 'auto',
109
350
  api_base: API_BASE,
110
351
  };
111
- config.byok_key = anthropicKey;
352
+ config.byok_key = key;
112
353
  config.byok_enabled = true;
354
+ config.byok_provider = detectedProvider;
113
355
  saveConfig(config);
114
356
  return true;
115
357
  }
116
- /** Disable BYOK mode (switch back to Kernel API key) */
358
+ /** Disable BYOK mode */
117
359
  export function disableByok() {
118
360
  const config = loadConfig();
119
361
  if (config) {
@@ -121,7 +363,7 @@ export function disableByok() {
121
363
  saveConfig(config);
122
364
  }
123
365
  }
124
- /** Verify a Kernel API key. Returns tier info or error. */
366
+ /** Verify a Kernel API key */
125
367
  export async function verifyApiKey(key) {
126
368
  try {
127
369
  const res = await fetch(`${API_BASE}/agents`, {
@@ -138,7 +380,7 @@ export async function verifyApiKey(key) {
138
380
  return { valid: false, error: `Connection failed: ${err}` };
139
381
  }
140
382
  }
141
- /** Get usage stats for current Kernel API key */
383
+ /** Get usage stats */
142
384
  export async function getUsageStats() {
143
385
  const key = getApiKey();
144
386
  if (!key)
package/dist/auth.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -10,13 +10,13 @@
10
10
  // $ kbot usage # Show usage stats
11
11
  import { createInterface } from 'node:readline';
12
12
  import { Command } from 'commander';
13
- import { getApiKey, setupAuth, getUsageStats, loadConfig, verifyApiKey, setupByok, isByokEnabled, disableByok } from './auth.js';
13
+ import { getApiKey, setupAuth, getUsageStats, loadConfig, verifyApiKey, setupByok, isByokEnabled, disableByok, detectProvider, getByokProvider, PROVIDERS } from './auth.js';
14
14
  import { runAndPrint, runAgent } from './agent.js';
15
15
  import { gatherContext } from './context.js';
16
16
  import { registerAllTools } from './tools/index.js';
17
17
  import { clearHistory, clearMemory } from './memory.js';
18
18
  import { banner, bannerCompact, bannerAuth, matrixConnect, prompt as kbotPrompt, printUsage, printError, printSuccess, printInfo, printResponse, printHelp, printGoodbye, } from './ui.js';
19
- const VERSION = '1.1.1';
19
+ const VERSION = '1.3.0';
20
20
  async function main() {
21
21
  const program = new Command();
22
22
  program
@@ -40,7 +40,7 @@ async function main() {
40
40
  });
41
41
  program
42
42
  .command('byok')
43
- .description('Bring Your Own Key — use your own Anthropic API key')
43
+ .description('Bring Your Own Key — use your own LLM API key (Anthropic, OpenAI, or Google)')
44
44
  .option('--off', 'Disable BYOK mode (switch back to Kernel API)')
45
45
  .action(async (opts) => {
46
46
  if (opts.off) {
@@ -135,30 +135,68 @@ async function byokFlow() {
135
135
  const rl = createInterface({ input: process.stdin, output: process.stdout });
136
136
  console.log(bannerAuth());
137
137
  printInfo('BYOK Mode — Bring Your Own Key');
138
- printInfo('Use your own Anthropic API key. You pay Anthropic directly for tokens.');
138
+ printInfo('Use your own LLM API key. You pay the provider directly for tokens.');
139
139
  printInfo('Kernel routing + tools + collective intelligence are free.');
140
140
  console.log();
141
- printInfo('Enter your Anthropic API key:');
141
+ printInfo('Supported providers (11):');
142
+ printInfo(' Anthropic (Claude) OpenAI (GPT) Google (Gemini)');
143
+ printInfo(' Mistral AI xAI (Grok) DeepSeek');
144
+ printInfo(' Groq Together AI Fireworks AI');
145
+ printInfo(' Perplexity Cohere');
146
+ console.log();
147
+ printInfo('Paste your API key (auto-detected by prefix):');
142
148
  console.log();
143
149
  const key = await new Promise((resolve) => {
144
- rl.question(' sk-ant-', (answer) => {
145
- resolve('sk-ant-' + answer.trim());
150
+ rl.question(' > ', (answer) => {
151
+ resolve(answer.trim());
146
152
  rl.close();
147
153
  });
148
154
  });
149
- if (!key.startsWith('sk-ant-') || key.length < 20) {
150
- printError('Invalid key format. Anthropic keys start with sk-ant-');
155
+ if (!key || key.length < 10) {
156
+ printError('Invalid key. Please provide a valid API key.');
151
157
  process.exit(1);
152
158
  }
153
- printInfo('Verifying Anthropic key...');
154
- const ok = await setupByok(key);
159
+ // Try auto-detect first
160
+ let provider = detectProvider(key);
161
+ // If we can't detect, ask user to pick
162
+ if (!provider) {
163
+ console.log();
164
+ printInfo('Could not auto-detect provider. Which provider is this key for?');
165
+ const providerList = Object.entries(PROVIDERS).map(([id, p], i) => ` ${i + 1}. ${p.name} (${id})`).join('\n');
166
+ console.log(providerList);
167
+ console.log();
168
+ const rl2 = createInterface({ input: process.stdin, output: process.stdout });
169
+ const choice = await new Promise((resolve) => {
170
+ rl2.question(' Enter number or provider id: ', (answer) => {
171
+ resolve(answer.trim());
172
+ rl2.close();
173
+ });
174
+ });
175
+ const providerIds = Object.keys(PROVIDERS);
176
+ const num = parseInt(choice, 10);
177
+ if (num >= 1 && num <= providerIds.length) {
178
+ provider = providerIds[num - 1];
179
+ }
180
+ else if (providerIds.includes(choice)) {
181
+ provider = choice;
182
+ }
183
+ else {
184
+ printError('Invalid provider selection.');
185
+ process.exit(1);
186
+ }
187
+ }
188
+ const providerConfig = PROVIDERS[provider];
189
+ printInfo(`Provider: ${providerConfig.name}`);
190
+ printInfo(`Models: ${providerConfig.defaultModel} / ${providerConfig.fastModel}`);
191
+ printInfo('Verifying key...');
192
+ const ok = await setupByok(key, provider);
155
193
  if (!ok) {
156
- printError('Key verification failed. Check your Anthropic API key.');
194
+ printError(`Key verification failed. Check your ${providerConfig.name} API key.`);
157
195
  process.exit(1);
158
196
  }
159
197
  console.log();
160
- printSuccess('BYOK mode enabled.');
161
- printInfo('You pay Anthropic directly. No message limits.');
198
+ printSuccess(`BYOK mode enabled — ${providerConfig.name}`);
199
+ printInfo('You pay the provider directly. No message limits.');
162
200
  printInfo('Kernel routing + 17 agents + tools = free.');
163
201
  console.log();
164
202
  printSuccess('Ready. Run `kbot` to start.');
@@ -169,7 +207,9 @@ async function startRepl(agentOpts, context, tier) {
169
207
  const byok = isByokEnabled();
170
208
  const agentCount = byok || tier === 'growth' || tier === 'enterprise' ? 17 : 5;
171
209
  if (byok) {
172
- printSuccess('BYOK mode using your Anthropic key (no message limits)');
210
+ const provider = getByokProvider();
211
+ const providerConfig = PROVIDERS[provider];
212
+ printSuccess(`BYOK mode — ${providerConfig.name} (no message limits)`);
173
213
  }
174
214
  console.log(matrixConnect(byok ? 'byok' : tier, agentCount));
175
215
  if (context.isGitRepo) {
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kernel.chat/kbot",
3
- "version": "1.1.1",
3
+ "version": "1.3.0",
4
4
  "description": "K:BOT — Kernel's terminal AI agent. Access 17 specialist agents from your command line.",
5
5
  "type": "module",
6
6
  "bin": {