@kernel.chat/kbot 1.0.2 → 1.1.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/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +94 -37
- package/dist/agent.js.map +1 -1
- package/dist/auth.d.ts +15 -3
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +74 -7
- package/dist/auth.js.map +1 -1
- package/dist/cli.js +76 -11
- package/dist/cli.js.map +1 -1
- package/package.json +1 -1
package/dist/agent.d.ts.map
CHANGED
|
@@ -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,
|
|
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"}
|
package/dist/agent.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
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
9
|
// 5. Smart model selection: use Haiku for simple tasks, Sonnet for complex ones
|
|
10
|
-
import { getApiKey, getApiBase } from './auth.js';
|
|
10
|
+
import { getApiKey, getApiBase, isByokEnabled, getByokKey, getAnthropicUrl } 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';
|
|
@@ -78,16 +78,19 @@ async function tryLocalFirst(message) {
|
|
|
78
78
|
* 4. Send results back to API if needed (costs 1 more message)
|
|
79
79
|
*/
|
|
80
80
|
export async function runAgent(message, options = {}) {
|
|
81
|
-
const
|
|
81
|
+
const byokMode = isByokEnabled();
|
|
82
|
+
const apiKey = byokMode ? getByokKey() : getApiKey();
|
|
82
83
|
if (!apiKey) {
|
|
83
|
-
throw new Error(
|
|
84
|
+
throw new Error(byokMode
|
|
85
|
+
? 'No Anthropic API key configured. Run `kbot byok` to set up.'
|
|
86
|
+
: 'No API key configured. Run `kbot auth` to set up.');
|
|
84
87
|
}
|
|
85
88
|
// Step 1: Try local-first — handle without API if possible
|
|
86
89
|
const localResult = await tryLocalFirst(message);
|
|
87
90
|
if (localResult !== null) {
|
|
88
91
|
addTurn({ role: 'user', content: message });
|
|
89
92
|
addTurn({ role: 'assistant', content: localResult });
|
|
90
|
-
printInfo('(handled locally — 0
|
|
93
|
+
printInfo('(handled locally — 0 tokens used)');
|
|
91
94
|
return {
|
|
92
95
|
content: localResult,
|
|
93
96
|
agent: 'local',
|
|
@@ -95,12 +98,9 @@ export async function runAgent(message, options = {}) {
|
|
|
95
98
|
toolCalls: 0,
|
|
96
99
|
};
|
|
97
100
|
}
|
|
98
|
-
const
|
|
99
|
-
const tier = options.tier || 'starter';
|
|
101
|
+
const tier = options.tier || 'free';
|
|
100
102
|
const tools = getToolDefinitionsForApi(tier);
|
|
101
103
|
// Step 2: Build rich context for one-shot success
|
|
102
|
-
// The more context we send upfront, the more likely the agent gets it right
|
|
103
|
-
// in a single API call — saving messages and tokens.
|
|
104
104
|
const contextSnippet = options.context ? formatContextForPrompt(options.context) : '';
|
|
105
105
|
const memorySnippet = getMemoryPrompt();
|
|
106
106
|
const efficiencyNote = `[K:BOT Efficiency Note]
|
|
@@ -117,36 +117,93 @@ Only use web_search when the user explicitly asks for current information.`;
|
|
|
117
117
|
const spinner = createSpinner(i === 0 ? 'Thinking...' : `Running tools (${toolCallCount})...`);
|
|
118
118
|
spinner.start();
|
|
119
119
|
try {
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
120
|
+
let res;
|
|
121
|
+
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';
|
|
125
|
+
const messages = [
|
|
126
|
+
...getPreviousMessages(),
|
|
127
|
+
{ role: 'user', content: i === 0 ? (systemContext ? `${systemContext}\n\n${message}` : message) : message },
|
|
128
|
+
];
|
|
129
|
+
// Append tool results as user messages
|
|
130
|
+
if (pendingToolResults.length > 0) {
|
|
131
|
+
for (const tr of pendingToolResults) {
|
|
132
|
+
messages.push({ role: 'user', content: `[Tool Result for ${tr.tool_call_id}]: ${tr.result}` });
|
|
133
|
+
}
|
|
134
|
+
pendingToolResults = [];
|
|
135
|
+
}
|
|
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
|
+
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 || {};
|
|
162
|
+
lastResponse = {
|
|
163
|
+
type: 'text',
|
|
164
|
+
agent: options.agent || 'kernel',
|
|
165
|
+
model: anthropicData.model,
|
|
166
|
+
content: textContent,
|
|
167
|
+
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),
|
|
171
|
+
},
|
|
172
|
+
};
|
|
148
173
|
}
|
|
149
|
-
|
|
174
|
+
else {
|
|
175
|
+
// ── KERNEL API MODE: Route through Kernel Matrix ──
|
|
176
|
+
const apiBase = getApiBase();
|
|
177
|
+
const body = {
|
|
178
|
+
message: i === 0 ? (systemContext ? `${systemContext}\n\n${message}` : message) : message,
|
|
179
|
+
mode: 'json',
|
|
180
|
+
max_tokens: 8192,
|
|
181
|
+
previous_messages: getPreviousMessages(),
|
|
182
|
+
tools: tools.length > 0 ? tools : undefined,
|
|
183
|
+
};
|
|
184
|
+
if (options.agent && options.agent !== 'auto') {
|
|
185
|
+
body.agent = options.agent;
|
|
186
|
+
}
|
|
187
|
+
if (pendingToolResults.length > 0) {
|
|
188
|
+
body.tool_results = pendingToolResults;
|
|
189
|
+
pendingToolResults = [];
|
|
190
|
+
}
|
|
191
|
+
res = await fetch(`${apiBase}/chat`, {
|
|
192
|
+
method: 'POST',
|
|
193
|
+
headers: {
|
|
194
|
+
'Content-Type': 'application/json',
|
|
195
|
+
Authorization: `Bearer ${apiKey}`,
|
|
196
|
+
'X-Kbot-Version': KBOT_VERSION,
|
|
197
|
+
},
|
|
198
|
+
body: JSON.stringify(body),
|
|
199
|
+
});
|
|
200
|
+
spinner.stop();
|
|
201
|
+
if (!res.ok) {
|
|
202
|
+
const err = await res.json().catch(() => ({ error: `HTTP ${res.status}` }));
|
|
203
|
+
throw new Error(err.error || `API error: ${res.status}`);
|
|
204
|
+
}
|
|
205
|
+
lastResponse = await res.json();
|
|
206
|
+
} // end kernel-api mode
|
|
150
207
|
// If it's a text response, we're done
|
|
151
208
|
if (lastResponse.type === 'text' || !lastResponse.tool_calls || lastResponse.tool_calls.length === 0) {
|
|
152
209
|
const content = lastResponse.content || '';
|
package/dist/agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAC3C,oEAAoE;AACpE,EAAE;AACF,2BAA2B;AAC3B,iFAAiF;AACjF,6EAA6E;AAC7E,iFAAiF;AACjF,2EAA2E;AAC3E,gFAAgF;AAEhF,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
package/dist/auth.d.ts
CHANGED
|
@@ -8,6 +8,8 @@ export interface KbotConfig {
|
|
|
8
8
|
api_base: string;
|
|
9
9
|
tier?: string;
|
|
10
10
|
monthly_limit?: number;
|
|
11
|
+
byok_key?: string;
|
|
12
|
+
byok_enabled?: boolean;
|
|
11
13
|
}
|
|
12
14
|
export declare function loadConfig(): KbotConfig | null;
|
|
13
15
|
export declare function saveConfig(config: KbotConfig): void;
|
|
@@ -15,7 +17,17 @@ export declare function getApiKey(): string | null;
|
|
|
15
17
|
export declare function getApiBase(): string;
|
|
16
18
|
export declare function getDefaultModel(): string;
|
|
17
19
|
export declare function getDefaultAgent(): string;
|
|
18
|
-
/**
|
|
20
|
+
/** Check if BYOK mode is enabled */
|
|
21
|
+
export declare function isByokEnabled(): boolean;
|
|
22
|
+
/** Get the Anthropic API key for BYOK mode */
|
|
23
|
+
export declare function getByokKey(): string | null;
|
|
24
|
+
/** Get the Anthropic API URL */
|
|
25
|
+
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) */
|
|
29
|
+
export declare function disableByok(): void;
|
|
30
|
+
/** Verify a Kernel API key. Returns tier info or error. */
|
|
19
31
|
export declare function verifyApiKey(key: string): Promise<{
|
|
20
32
|
valid: boolean;
|
|
21
33
|
tier?: string;
|
|
@@ -26,7 +38,7 @@ export declare function verifyApiKey(key: string): Promise<{
|
|
|
26
38
|
}>;
|
|
27
39
|
error?: string;
|
|
28
40
|
}>;
|
|
29
|
-
/** Get usage stats for current key */
|
|
41
|
+
/** Get usage stats for current Kernel API key */
|
|
30
42
|
export declare function getUsageStats(): Promise<{
|
|
31
43
|
tier: string;
|
|
32
44
|
monthly_messages: {
|
|
@@ -37,7 +49,7 @@ export declare function getUsageStats(): Promise<{
|
|
|
37
49
|
messages: number;
|
|
38
50
|
}>;
|
|
39
51
|
} | null>;
|
|
40
|
-
/** First-run setup flow
|
|
52
|
+
/** First-run setup flow */
|
|
41
53
|
export declare function setupAuth(apiKey: string): Promise<boolean>;
|
|
42
54
|
export { KBOT_DIR, CONFIG_PATH, API_BASE };
|
|
43
55
|
//# sourceMappingURL=auth.d.ts.map
|
package/dist/auth.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"
|
|
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"}
|
package/dist/auth.js
CHANGED
|
@@ -1,16 +1,20 @@
|
|
|
1
1
|
// K:BOT Auth — API key management and configuration
|
|
2
2
|
// Stores config in ~/.kbot/config.json
|
|
3
|
+
//
|
|
4
|
+
// Supports two modes:
|
|
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
|
|
3
7
|
import { homedir } from 'node:os';
|
|
4
8
|
import { join } from 'node:path';
|
|
5
9
|
import { mkdirSync, readFileSync, writeFileSync, existsSync } from 'node:fs';
|
|
6
10
|
const KBOT_DIR = join(homedir(), '.kbot');
|
|
7
11
|
const CONFIG_PATH = join(KBOT_DIR, 'config.json');
|
|
8
12
|
const API_BASE = 'https://eoxxpyixdieprsxlpwcs.supabase.co/functions/v1/kernel-api';
|
|
13
|
+
const ANTHROPIC_API_URL = 'https://api.anthropic.com/v1/messages';
|
|
9
14
|
function ensureDir() {
|
|
10
15
|
if (!existsSync(KBOT_DIR)) {
|
|
11
16
|
mkdirSync(KBOT_DIR, { recursive: true });
|
|
12
17
|
}
|
|
13
|
-
// Also ensure memory and history dirs
|
|
14
18
|
const memDir = join(KBOT_DIR, 'memory');
|
|
15
19
|
const histDir = join(KBOT_DIR, 'history');
|
|
16
20
|
if (!existsSync(memDir))
|
|
@@ -34,7 +38,6 @@ export function saveConfig(config) {
|
|
|
34
38
|
writeFileSync(CONFIG_PATH, JSON.stringify(config, null, 2));
|
|
35
39
|
}
|
|
36
40
|
export function getApiKey() {
|
|
37
|
-
// Env var takes precedence
|
|
38
41
|
const envKey = process.env.KBOT_API_KEY;
|
|
39
42
|
if (envKey)
|
|
40
43
|
return envKey;
|
|
@@ -53,7 +56,72 @@ export function getDefaultAgent() {
|
|
|
53
56
|
const config = loadConfig();
|
|
54
57
|
return config?.default_agent || 'auto';
|
|
55
58
|
}
|
|
56
|
-
/**
|
|
59
|
+
/** Check if BYOK mode is enabled */
|
|
60
|
+
export function isByokEnabled() {
|
|
61
|
+
const envKey = process.env.ANTHROPIC_API_KEY;
|
|
62
|
+
if (envKey)
|
|
63
|
+
return true;
|
|
64
|
+
const config = loadConfig();
|
|
65
|
+
return config?.byok_enabled === true && !!config?.byok_key;
|
|
66
|
+
}
|
|
67
|
+
/** Get the Anthropic API key for BYOK mode */
|
|
68
|
+
export function getByokKey() {
|
|
69
|
+
const envKey = process.env.ANTHROPIC_API_KEY;
|
|
70
|
+
if (envKey)
|
|
71
|
+
return envKey;
|
|
72
|
+
const config = loadConfig();
|
|
73
|
+
return config?.byok_key || null;
|
|
74
|
+
}
|
|
75
|
+
/** Get the Anthropic API URL */
|
|
76
|
+
export function getAnthropicUrl() {
|
|
77
|
+
return ANTHROPIC_API_URL;
|
|
78
|
+
}
|
|
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
|
|
82
|
+
try {
|
|
83
|
+
const res = await fetch(ANTHROPIC_API_URL, {
|
|
84
|
+
method: 'POST',
|
|
85
|
+
headers: {
|
|
86
|
+
'Content-Type': 'application/json',
|
|
87
|
+
'x-api-key': anthropicKey,
|
|
88
|
+
'anthropic-version': '2023-06-01',
|
|
89
|
+
},
|
|
90
|
+
body: JSON.stringify({
|
|
91
|
+
model: 'claude-haiku-4-5-20251001',
|
|
92
|
+
max_tokens: 16,
|
|
93
|
+
messages: [{ role: 'user', content: 'hi' }],
|
|
94
|
+
}),
|
|
95
|
+
});
|
|
96
|
+
if (!res.ok) {
|
|
97
|
+
return false;
|
|
98
|
+
}
|
|
99
|
+
// Consume the response
|
|
100
|
+
await res.json();
|
|
101
|
+
}
|
|
102
|
+
catch {
|
|
103
|
+
return false;
|
|
104
|
+
}
|
|
105
|
+
const config = loadConfig() || {
|
|
106
|
+
api_key: '',
|
|
107
|
+
default_model: 'auto',
|
|
108
|
+
default_agent: 'auto',
|
|
109
|
+
api_base: API_BASE,
|
|
110
|
+
};
|
|
111
|
+
config.byok_key = anthropicKey;
|
|
112
|
+
config.byok_enabled = true;
|
|
113
|
+
saveConfig(config);
|
|
114
|
+
return true;
|
|
115
|
+
}
|
|
116
|
+
/** Disable BYOK mode (switch back to Kernel API key) */
|
|
117
|
+
export function disableByok() {
|
|
118
|
+
const config = loadConfig();
|
|
119
|
+
if (config) {
|
|
120
|
+
config.byok_enabled = false;
|
|
121
|
+
saveConfig(config);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
/** Verify a Kernel API key. Returns tier info or error. */
|
|
57
125
|
export async function verifyApiKey(key) {
|
|
58
126
|
try {
|
|
59
127
|
const res = await fetch(`${API_BASE}/agents`, {
|
|
@@ -70,7 +138,7 @@ export async function verifyApiKey(key) {
|
|
|
70
138
|
return { valid: false, error: `Connection failed: ${err}` };
|
|
71
139
|
}
|
|
72
140
|
}
|
|
73
|
-
/** Get usage stats for current key */
|
|
141
|
+
/** Get usage stats for current Kernel API key */
|
|
74
142
|
export async function getUsageStats() {
|
|
75
143
|
const key = getApiKey();
|
|
76
144
|
if (!key)
|
|
@@ -87,12 +155,11 @@ export async function getUsageStats() {
|
|
|
87
155
|
return null;
|
|
88
156
|
}
|
|
89
157
|
}
|
|
90
|
-
/** First-run setup flow
|
|
158
|
+
/** First-run setup flow */
|
|
91
159
|
export async function setupAuth(apiKey) {
|
|
92
160
|
const result = await verifyApiKey(apiKey);
|
|
93
|
-
if (!result.valid)
|
|
161
|
+
if (!result.valid)
|
|
94
162
|
return false;
|
|
95
|
-
}
|
|
96
163
|
const config = {
|
|
97
164
|
api_key: apiKey,
|
|
98
165
|
default_model: 'auto',
|
package/dist/auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,uCAAuC;
|
|
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 } from './auth.js';
|
|
13
|
+
import { getApiKey, setupAuth, getUsageStats, loadConfig, verifyApiKey, setupByok, isByokEnabled, disableByok } 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.
|
|
19
|
+
const VERSION = '1.1.1';
|
|
20
20
|
async function main() {
|
|
21
21
|
const program = new Command();
|
|
22
22
|
program
|
|
@@ -38,6 +38,18 @@ async function main() {
|
|
|
38
38
|
.action(async () => {
|
|
39
39
|
await authFlow();
|
|
40
40
|
});
|
|
41
|
+
program
|
|
42
|
+
.command('byok')
|
|
43
|
+
.description('Bring Your Own Key — use your own Anthropic API key')
|
|
44
|
+
.option('--off', 'Disable BYOK mode (switch back to Kernel API)')
|
|
45
|
+
.action(async (opts) => {
|
|
46
|
+
if (opts.off) {
|
|
47
|
+
disableByok();
|
|
48
|
+
printSuccess('BYOK disabled. Using Kernel API key.');
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
await byokFlow();
|
|
52
|
+
});
|
|
41
53
|
program
|
|
42
54
|
.command('usage')
|
|
43
55
|
.description('Show usage statistics')
|
|
@@ -53,13 +65,15 @@ async function main() {
|
|
|
53
65
|
const opts = program.opts();
|
|
54
66
|
const promptArgs = program.args;
|
|
55
67
|
// If a sub-command was run, we're done
|
|
56
|
-
if (
|
|
68
|
+
if (['auth', 'usage', 'byok'].includes(program.args[0]))
|
|
57
69
|
return;
|
|
58
|
-
// Check for API key
|
|
70
|
+
// Check for API key (Kernel or BYOK)
|
|
71
|
+
const byokActive = isByokEnabled();
|
|
59
72
|
const apiKey = getApiKey();
|
|
60
|
-
if (!apiKey) {
|
|
73
|
+
if (!apiKey && !byokActive) {
|
|
61
74
|
console.log(banner());
|
|
62
75
|
printInfo('No API key found. Let\'s connect you to the Matrix.');
|
|
76
|
+
printInfo('Or run `kbot byok` to use your own Anthropic API key.');
|
|
63
77
|
console.log();
|
|
64
78
|
await authFlow();
|
|
65
79
|
return;
|
|
@@ -69,7 +83,7 @@ async function main() {
|
|
|
69
83
|
// Gather project context (once at startup)
|
|
70
84
|
const context = gatherContext();
|
|
71
85
|
const config = loadConfig();
|
|
72
|
-
const tier = config?.tier || '
|
|
86
|
+
const tier = byokActive ? 'growth' : (config?.tier || 'free');
|
|
73
87
|
const agentOpts = {
|
|
74
88
|
agent: opts.agent || 'auto',
|
|
75
89
|
model: opts.model,
|
|
@@ -78,7 +92,7 @@ async function main() {
|
|
|
78
92
|
tier,
|
|
79
93
|
};
|
|
80
94
|
// One-shot mode: kbot "fix the bug"
|
|
81
|
-
if (promptArgs.length > 0 &&
|
|
95
|
+
if (promptArgs.length > 0 && !['auth', 'usage', 'byok'].includes(promptArgs[0])) {
|
|
82
96
|
console.log(bannerCompact());
|
|
83
97
|
const message = promptArgs.join(' ');
|
|
84
98
|
await runAndPrint(message, agentOpts);
|
|
@@ -114,14 +128,50 @@ async function authFlow() {
|
|
|
114
128
|
process.exit(1);
|
|
115
129
|
}
|
|
116
130
|
console.log();
|
|
117
|
-
console.log(matrixConnect(result.tier || '
|
|
131
|
+
console.log(matrixConnect(result.tier || 'free', result.agents?.length || 5));
|
|
132
|
+
printSuccess('Ready. Run `kbot` to start.');
|
|
133
|
+
}
|
|
134
|
+
async function byokFlow() {
|
|
135
|
+
const rl = createInterface({ input: process.stdin, output: process.stdout });
|
|
136
|
+
console.log(bannerAuth());
|
|
137
|
+
printInfo('BYOK Mode — Bring Your Own Key');
|
|
138
|
+
printInfo('Use your own Anthropic API key. You pay Anthropic directly for tokens.');
|
|
139
|
+
printInfo('Kernel routing + tools + collective intelligence are free.');
|
|
140
|
+
console.log();
|
|
141
|
+
printInfo('Enter your Anthropic API key:');
|
|
142
|
+
console.log();
|
|
143
|
+
const key = await new Promise((resolve) => {
|
|
144
|
+
rl.question(' sk-ant-', (answer) => {
|
|
145
|
+
resolve('sk-ant-' + answer.trim());
|
|
146
|
+
rl.close();
|
|
147
|
+
});
|
|
148
|
+
});
|
|
149
|
+
if (!key.startsWith('sk-ant-') || key.length < 20) {
|
|
150
|
+
printError('Invalid key format. Anthropic keys start with sk-ant-');
|
|
151
|
+
process.exit(1);
|
|
152
|
+
}
|
|
153
|
+
printInfo('Verifying Anthropic key...');
|
|
154
|
+
const ok = await setupByok(key);
|
|
155
|
+
if (!ok) {
|
|
156
|
+
printError('Key verification failed. Check your Anthropic API key.');
|
|
157
|
+
process.exit(1);
|
|
158
|
+
}
|
|
159
|
+
console.log();
|
|
160
|
+
printSuccess('BYOK mode enabled.');
|
|
161
|
+
printInfo('You pay Anthropic directly. No message limits.');
|
|
162
|
+
printInfo('Kernel routing + 17 agents + tools = free.');
|
|
163
|
+
console.log();
|
|
118
164
|
printSuccess('Ready. Run `kbot` to start.');
|
|
119
165
|
}
|
|
120
166
|
async function startRepl(agentOpts, context, tier) {
|
|
121
167
|
console.log(banner());
|
|
122
168
|
// Show connection info
|
|
123
|
-
const
|
|
124
|
-
|
|
169
|
+
const byok = isByokEnabled();
|
|
170
|
+
const agentCount = byok || tier === 'growth' || tier === 'enterprise' ? 17 : 5;
|
|
171
|
+
if (byok) {
|
|
172
|
+
printSuccess('BYOK mode — using your Anthropic key (no message limits)');
|
|
173
|
+
}
|
|
174
|
+
console.log(matrixConnect(byok ? 'byok' : tier, agentCount));
|
|
125
175
|
if (context.isGitRepo) {
|
|
126
176
|
printInfo(`Project: ${context.repoRoot?.split('/').pop() || 'unknown'} (${context.language || 'unknown'})`);
|
|
127
177
|
printInfo(`Branch: ${context.branch || 'unknown'}`);
|
|
@@ -143,7 +193,12 @@ async function startRepl(agentOpts, context, tier) {
|
|
|
143
193
|
}
|
|
144
194
|
// Slash commands
|
|
145
195
|
if (input.startsWith('/')) {
|
|
146
|
-
|
|
196
|
+
try {
|
|
197
|
+
await handleSlashCommand(input, agentOpts, rl);
|
|
198
|
+
}
|
|
199
|
+
catch (err) {
|
|
200
|
+
printError(err instanceof Error ? err.message : String(err));
|
|
201
|
+
}
|
|
147
202
|
rl.prompt();
|
|
148
203
|
return;
|
|
149
204
|
}
|
|
@@ -165,6 +220,12 @@ async function startRepl(agentOpts, context, tier) {
|
|
|
165
220
|
console.log();
|
|
166
221
|
rl.prompt();
|
|
167
222
|
});
|
|
223
|
+
// Ctrl+C: don't exit immediately — just cancel current input and re-prompt
|
|
224
|
+
rl.on('SIGINT', () => {
|
|
225
|
+
console.log(); // newline after ^C
|
|
226
|
+
printInfo('Press Ctrl+C again or type /quit to exit.');
|
|
227
|
+
rl.prompt();
|
|
228
|
+
});
|
|
168
229
|
rl.on('close', () => {
|
|
169
230
|
printGoodbye();
|
|
170
231
|
process.exit(0);
|
|
@@ -235,6 +296,10 @@ async function handleSlashCommand(input, opts, rl) {
|
|
|
235
296
|
printError(`Unknown command: /${cmd}. Type /help for available commands.`);
|
|
236
297
|
}
|
|
237
298
|
}
|
|
299
|
+
// Prevent unhandled rejections from killing the process
|
|
300
|
+
process.on('unhandledRejection', (err) => {
|
|
301
|
+
printError(`Unexpected error: ${err instanceof Error ? err.message : String(err)}`);
|
|
302
|
+
});
|
|
238
303
|
// Run
|
|
239
304
|
main().catch((err) => {
|
|
240
305
|
console.error('Fatal error:', err);
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,mCAAmC;AACnC,EAAE;AACF,SAAS;AACT,qDAAqD;AACrD,gEAAgE;AAChE,yDAAyD;AACzD,mDAAmD;AACnD,sDAAsD;AACtD,qDAAqD;AAErD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACzF,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAqB,MAAM,YAAY,CAAA;AACrE,OAAO,EAAE,aAAa,EAAuB,MAAM,cAAc,CAAA;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACvD,OAAO,EACL,MAAM,EACN,aAAa,EACb,UAAU,EACV,aAAa,EACb,MAAM,IAAI,UAAU,EACpB,UAAU,EACV,UAAU,EACV,YAAY,EACZ,SAAS,EACT,aAAa,EACb,SAAS,EACT,YAAY,GAEb,MAAM,SAAS,CAAA;AAEhB,MAAM,OAAO,GAAG,OAAO,CAAA;AAEvB,KAAK,UAAU,IAAI;IACjB,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;IAE7B,OAAO;SACJ,IAAI,CAAC,MAAM,CAAC;SACZ,WAAW,CAAC,sCAAsC,CAAC;SACnD,OAAO,CAAC,OAAO,CAAC;SAChB,MAAM,CAAC,qBAAqB,EAAE,qEAAqE,CAAC;SACpG,MAAM,CAAC,qBAAqB,EAAE,yCAAyC,CAAC;SACxE,MAAM,CAAC,cAAc,EAAE,qBAAqB,CAAC;SAC7C,MAAM,CAAC,gBAAgB,EAAE,6CAA6C,CAAC;SACvE,QAAQ,CAAC,aAAa,EAAE,iBAAiB,CAAC;SAC1C,UAAU,CAAC,YAAY,EAAE,0BAA0B,CAAC;SACpD,cAAc,CAAC,KAAK,CAAC;SACrB,MAAM,CAAC,GAAG,EAAE,GAAwC,CAAC,CAAC,CAAA;IAEzD,eAAe;IACf,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,mBAAmB,CAAC;SAChC,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,QAAQ,EAAE,CAAA;IAClB,CAAC,CAAC,CAAA;IAEJ,OAAO;SACJ,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,uBAAuB,CAAC;SACpC,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,KAAK,GAAG,MAAM,aAAa,EAAE,CAAA;QACnC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,UAAU,CAAC,+CAA+C,CAAC,CAAA;YAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QACD,UAAU,CAAC,KAAK,CAAC,CAAA;IACnB,CAAC,CAAC,CAAA;IAEJ,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAE3B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;IAC3B,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAA;IAE/B,uCAAuC;IACvC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO;QAAE,OAAM;IAErE,oBAAoB;IACpB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAC1B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAA;QACrB,SAAS,CAAC,qDAAqD,CAAC,CAAA;QAChE,OAAO,CAAC,GAAG,EAAE,CAAA;QACb,MAAM,QAAQ,EAAE,CAAA;QAChB,OAAM;IACR,CAAC;IAED,iBAAiB;IACjB,MAAM,gBAAgB,EAAE,CAAA;IAExB,2CAA2C;IAC3C,MAAM,OAAO,GAAG,aAAa,EAAE,CAAA;IAC/B,MAAM,MAAM,GAAG,UAAU,EAAE,CAAA;IAC3B,MAAM,IAAI,GAAG,MAAM,EAAE,IAAI,IAAI,SAAS,CAAA;IAEtC,MAAM,SAAS,GAAiB;QAC9B,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,MAAM;QAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,OAAO;QACP,IAAI;KACL,CAAA;IAED,oCAAoC;IACpC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,MAAM,IAAI,UAAU,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QACnF,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAA;QAC5B,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACpC,MAAM,WAAW,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QACrC,OAAM;IACR,CAAC;IAED,wBAAwB;IACxB,MAAM,SAAS,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;AAC3C,CAAC;AAED,KAAK,UAAU,QAAQ;IACrB,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;IAE5E,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAA;IACzB,SAAS,CAAC,yDAAyD,CAAC,CAAA;IACpE,OAAO,CAAC,GAAG,EAAE,CAAA;IAEb,MAAM,GAAG,GAAG,MAAM,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE;QAChD,EAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE;YACnC,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;YACnC,EAAE,CAAC,KAAK,EAAE,CAAA;QACZ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QACnD,UAAU,CAAC,8CAA8C,CAAC,CAAA;QAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,SAAS,CAAC,gCAAgC,CAAC,CAAA;IAC3C,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,GAAG,CAAC,CAAA;IAEtC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,UAAU,CAAC,sBAAsB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAA;QAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,CAAA;IAC/B,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,UAAU,CAAC,wDAAwD,CAAC,CAAA;QACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,OAAO,CAAC,GAAG,EAAE,CAAA;IACb,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,IAAI,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC,CAAA;IAChF,YAAY,CAAC,6BAA6B,CAAC,CAAA;AAC7C,CAAC;AAED,KAAK,UAAU,SAAS,CACtB,SAAuB,EACvB,OAAuB,EACvB,IAAY;IAEZ,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAA;IAErB,uBAAuB;IACvB,MAAM,UAAU,GAAG,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IACtE,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAA;IAE5C,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,SAAS,CAAC,YAAY,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,SAAS,KAAK,OAAO,CAAC,QAAQ,IAAI,SAAS,GAAG,CAAC,CAAA;QAC3G,SAAS,CAAC,WAAW,OAAO,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC,CAAA;QACnD,OAAO,CAAC,GAAG,EAAE,CAAA;IACf,CAAC;IAED,SAAS,CAAC,wCAAwC,CAAC,CAAA;IACnD,OAAO,CAAC,GAAG,EAAE,CAAA;IAEb,MAAM,EAAE,GAAG,eAAe,CAAC;QACzB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM,EAAE,UAAU,EAAE;KACrB,CAAC,CAAA;IAEF,EAAE,CAAC,MAAM,EAAE,CAAA;IAEX,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;QACzB,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,EAAE,CAAC,MAAM,EAAE,CAAA;YACX,OAAM;QACR,CAAC;QAED,iBAAiB;QACjB,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,kBAAkB,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,CAAC,CAAA;YAC9C,EAAE,CAAC,MAAM,EAAE,CAAA;YACX,OAAM;QACR,CAAC;QAED,YAAY;QACZ,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;YACjD,aAAa,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAA;YAE/C,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;gBACnB,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAA;gBAChE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,MAAM,QAAQ,CAAC,KAAK,MAAM,YAAY,GAAG,aAAa,cAAc,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,SAAS,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC7L,CAAC;iBAAM,IAAI,QAAQ,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;gBACtC,gEAAgE;YAClE,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,UAAU,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;QAC9D,CAAC;QAED,OAAO,CAAC,GAAG,EAAE,CAAA;QACb,EAAE,CAAC,MAAM,EAAE,CAAA;IACb,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;QAClB,YAAY,EAAE,CAAA;QACd,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC/B,KAAa,EACb,IAAkB,EAClB,EAAsC;IAEtC,MAAM,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAEhD,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,MAAM;YACT,SAAS,EAAE,CAAA;YACX,MAAK;QAEP,KAAK,OAAO;YACV,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;gBACZ,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;gBACpB,YAAY,CAAC,iBAAiB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;YAC1C,CAAC;iBAAM,CAAC;gBACN,SAAS,CAAC,kBAAkB,IAAI,CAAC,KAAK,IAAI,MAAM,EAAE,CAAC,CAAA;gBACnD,SAAS,CAAC,iFAAiF,CAAC,CAAA;YAC9F,CAAC;YACD,MAAK;QAEP,KAAK,OAAO;YACV,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;gBACZ,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;gBACpB,YAAY,CAAC,iBAAiB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;YAC1C,CAAC;iBAAM,CAAC;gBACN,SAAS,CAAC,kBAAkB,IAAI,CAAC,KAAK,IAAI,MAAM,EAAE,CAAC,CAAA;YACrD,CAAC;YACD,MAAK;QAEP,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,KAAK,GAAG,MAAM,aAAa,EAAE,CAAA;YACnC,IAAI,KAAK;gBAAE,UAAU,CAAC,KAAK,CAAC,CAAA;;gBACvB,UAAU,CAAC,6BAA6B,CAAC,CAAA;YAC9C,MAAK;QACP,CAAC;QAED,KAAK,OAAO;YACV,YAAY,EAAE,CAAA;YACd,YAAY,CAAC,8BAA8B,CAAC,CAAA;YAC5C,MAAK;QAEP,KAAK,SAAS;YACZ,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,MAAM,EAAE,sBAAsB,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAA;gBAC/D,SAAS,CAAC,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;YACjD,CAAC;iBAAM,CAAC;gBACN,SAAS,CAAC,8BAA8B,CAAC,CAAA;YAC3C,CAAC;YACD,MAAK;QAEP,KAAK,QAAQ;YACX,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;gBACxB,WAAW,EAAE,CAAA;gBACb,YAAY,CAAC,2BAA2B,CAAC,CAAA;YAC3C,CAAC;iBAAM,CAAC;gBACN,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAA;gBAClD,MAAM,GAAG,GAAG,UAAU,EAAE,CAAA;gBACxB,SAAS,CAAC,GAAG,IAAI,uBAAuB,CAAC,CAAA;YAC3C,CAAC;YACD,MAAK;QAEP,KAAK,MAAM,CAAC;QACZ,KAAK,MAAM;YACT,EAAE,CAAC,KAAK,EAAE,CAAA;YACV,MAAK;QAEP;YACE,UAAU,CAAC,qBAAqB,GAAG,sCAAsC,CAAC,CAAA;IAC9E,CAAC;AACH,CAAC;AAED,MAAM;AACN,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,GAAG,CAAC,CAAA;IAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|