@kodaris/krubble-app-components 1.0.76 → 1.0.78
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/chatbot.d.ts +199 -8
- package/dist/chatbot.d.ts.map +1 -1
- package/dist/chatbot.js +863 -40
- package/dist/chatbot.js.map +1 -1
- package/dist/krubble-app.bundled.js +923 -95
- package/dist/krubble-app.bundled.js.map +1 -1
- package/dist/krubble-app.bundled.min.js +591 -120
- package/dist/krubble-app.bundled.min.js.map +1 -1
- package/dist/krubble-app.umd.js +923 -95
- package/dist/krubble-app.umd.js.map +1 -1
- package/dist/krubble-app.umd.min.js +548 -77
- package/dist/krubble-app.umd.min.js.map +1 -1
- package/package.json +1 -1
package/dist/chatbot.d.ts
CHANGED
|
@@ -54,6 +54,87 @@ export interface KRChatbotMessage {
|
|
|
54
54
|
/** Internal files attached to this message. */
|
|
55
55
|
internalFiles?: KRChatbotInternalFile[];
|
|
56
56
|
}
|
|
57
|
+
/**
|
|
58
|
+
* INTERNAL-ONLY debug telemetry carried by a `TOKEN_USAGE` SSE event's `data`.
|
|
59
|
+
*
|
|
60
|
+
* ⚠️ This is internal debugging telemetry — token counts, cache internals, and
|
|
61
|
+
* cost estimates. The backend only emits `TOKEN_USAGE` to internal/authorized
|
|
62
|
+
* users, so the component may assume that if this arrives the viewer is allowed
|
|
63
|
+
* to see it. It is still only surfaced in the `inline` variant's debug panel,
|
|
64
|
+
* never in the floating widget and never as a chat bubble.
|
|
65
|
+
*
|
|
66
|
+
* Every event carries all three scopes plus context, so panel state is
|
|
67
|
+
* last-value-wins (just overwrite) — no client-side accumulation needed:
|
|
68
|
+
* - `iteration*` — the single Bedrock call this event reports.
|
|
69
|
+
* - `turn*` — running totals for the current user message (resets each message).
|
|
70
|
+
* - `conversation*` — LIFETIME totals for the whole conversation ("total so far").
|
|
71
|
+
* - `context*` — live context-fullness gauge.
|
|
72
|
+
*
|
|
73
|
+
* Cost fields are approximate USD at the active model's rates (not a bill).
|
|
74
|
+
*/
|
|
75
|
+
export interface KRChatbotTelemetry {
|
|
76
|
+
/** Which tool-use round-trip this is within the turn (1-based). */
|
|
77
|
+
iteration: number;
|
|
78
|
+
/** Non-cached input tokens billed for this call. */
|
|
79
|
+
iterationInput: number;
|
|
80
|
+
/** Output tokens generated this call. */
|
|
81
|
+
iterationOutput: number;
|
|
82
|
+
/** Tokens served from prompt cache this call (deep discount). */
|
|
83
|
+
iterationCacheRead: number;
|
|
84
|
+
/** Tokens written to cache this call (~1.25x input). */
|
|
85
|
+
iterationCacheWrite: number;
|
|
86
|
+
/** Bedrock's reported total for this call. */
|
|
87
|
+
iterationTotalTokens: number;
|
|
88
|
+
/** Cache hit-rate % for this call, as a string (e.g. "100"). */
|
|
89
|
+
iterationHitRate: string;
|
|
90
|
+
/** Approx cost of this call at the active model's rates (USD). */
|
|
91
|
+
iterationCostUsd: number;
|
|
92
|
+
/** Running billed input (input + cacheWrite) across the turn. */
|
|
93
|
+
turnInputTokens: number;
|
|
94
|
+
/** Running cache-read tokens across the turn. */
|
|
95
|
+
turnCacheReadTokens: number;
|
|
96
|
+
/** Running output tokens across the turn. */
|
|
97
|
+
turnOutputTokens: number;
|
|
98
|
+
/** Running hit-rate % across the turn, as a string. */
|
|
99
|
+
turnHitRate: string;
|
|
100
|
+
/** Approx running cost across the turn (USD). */
|
|
101
|
+
turnCostUsd: number;
|
|
102
|
+
/** LIFETIME non-cached input tokens for the whole conversation. */
|
|
103
|
+
conversationInputTokens: number;
|
|
104
|
+
/** LIFETIME output tokens for the whole conversation. */
|
|
105
|
+
conversationOutputTokens: number;
|
|
106
|
+
/** LIFETIME cache-read tokens for the whole conversation. */
|
|
107
|
+
conversationCacheReadTokens: number;
|
|
108
|
+
/** LIFETIME cache-write tokens for the whole conversation. */
|
|
109
|
+
conversationCacheWriteTokens: number;
|
|
110
|
+
/** LIFETIME approx cost of the whole conversation so far (USD). */
|
|
111
|
+
conversationCostUsd: number;
|
|
112
|
+
/** Exact size of THIS request (input + cacheRead + cacheWrite). */
|
|
113
|
+
currentContextTokens: number;
|
|
114
|
+
/** The active model's context window (e.g. 1000000). */
|
|
115
|
+
contextWindowTokens: number;
|
|
116
|
+
/** How full the context is right now (0–100). */
|
|
117
|
+
contextUsedPercent: number;
|
|
118
|
+
/** The model's cache-checkpoint minimum (1024 or 4096). */
|
|
119
|
+
modelMinTokens?: number;
|
|
120
|
+
/** `"simplified"` or `"manual"` — the active history-caching strategy. */
|
|
121
|
+
cachingMode?: string;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* INTERNAL-ONLY debug telemetry carried by a `CACHE_CHECKPOINT` SSE event's
|
|
125
|
+
* `data`. Emitted once per iteration when a history cache checkpoint is placed.
|
|
126
|
+
* Debug panel only — records when the checkpoint was placed and under which mode.
|
|
127
|
+
*/
|
|
128
|
+
export interface KRChatbotCacheCheckpoint {
|
|
129
|
+
/** Iteration (1-based) this checkpoint was placed on. */
|
|
130
|
+
iteration: number;
|
|
131
|
+
/** `"simplified"` (placed every turn) or `"manual"` (placed once estimate clears the min). */
|
|
132
|
+
mode: string;
|
|
133
|
+
/** The char/4 history-size estimate the manual-mode gate compares against. */
|
|
134
|
+
estimatedHistoryTokens?: number;
|
|
135
|
+
/** The model's cache-checkpoint minimum the estimate is compared to. */
|
|
136
|
+
modelMinTokens?: number;
|
|
137
|
+
}
|
|
57
138
|
/**
|
|
58
139
|
* A skill the user can invoke from the composer. Selecting one inserts
|
|
59
140
|
* `/code ` into the message body — there is no persistent skill state.
|
|
@@ -68,6 +149,13 @@ export interface KRChatbotSkill {
|
|
|
68
149
|
name: string;
|
|
69
150
|
/** Short description shown in the browse dialog cards. */
|
|
70
151
|
description?: string;
|
|
152
|
+
/**
|
|
153
|
+
* Whether this skill is installed (turned on) on this instance. Only set for
|
|
154
|
+
* shared Kodaris global skills (from `/aiskills/global/search`), where the
|
|
155
|
+
* `+` button toggles it via `/aiskills/global/{code}/enabled`. Undefined for
|
|
156
|
+
* this org's own skills.
|
|
157
|
+
*/
|
|
158
|
+
enabled?: boolean;
|
|
71
159
|
}
|
|
72
160
|
/**
|
|
73
161
|
* Callback function type for sending messages.
|
|
@@ -133,15 +221,27 @@ export declare class KRChatbot extends LitElement {
|
|
|
133
221
|
private _dragStartTop;
|
|
134
222
|
private _resizeStartW;
|
|
135
223
|
private _resizeStartH;
|
|
224
|
+
/** Cursor X at debug-drawer resize start. */
|
|
225
|
+
private _debugResizeStartX;
|
|
226
|
+
/** Debug-drawer width at resize start. */
|
|
227
|
+
private _debugResizeStartW;
|
|
136
228
|
/** Counter for depth-aware dragenter/dragleave tracking. */
|
|
137
229
|
private _dragDepth;
|
|
138
230
|
/** Monotonic id source for pending attachments. */
|
|
139
231
|
private _pendingSeq;
|
|
140
232
|
/**
|
|
141
|
-
* Request-id
|
|
142
|
-
* responses are dropped (mirrors the kr-combo-box `_requestId` pattern).
|
|
233
|
+
* Request-id guards for skill searches — bumped on each search so out-of-order
|
|
234
|
+
* responses are dropped (mirrors the kr-combo-box `_requestId` pattern). Org and
|
|
235
|
+
* global searches run concurrently into separate buffers, so each has its own.
|
|
143
236
|
*/
|
|
144
237
|
private _skillRequestId;
|
|
238
|
+
private _globalSkillRequestId;
|
|
239
|
+
/**
|
|
240
|
+
* Codes of global skills with an in-flight enable/disable request. The `+`
|
|
241
|
+
* button reads this to show a pending state and ignore repeat clicks. Mutated
|
|
242
|
+
* in place; call requestUpdate() after changing it to re-render.
|
|
243
|
+
*/
|
|
244
|
+
private _globalSkillPending;
|
|
145
245
|
/**
|
|
146
246
|
* Callback function for sending messages. Receives the user's message and
|
|
147
247
|
* current conversation history. Must return a Response with a streaming SSE body.
|
|
@@ -203,6 +303,39 @@ export declare class KRChatbot extends LitElement {
|
|
|
203
303
|
private _inputValue;
|
|
204
304
|
private _isStreaming;
|
|
205
305
|
private _error;
|
|
306
|
+
/**
|
|
307
|
+
* User-facing context warning text (`CONVERSATION_TOKEN_WARNING`). Shown as a
|
|
308
|
+
* dismissible banner in all variants. Carries only friendly guidance, no numbers.
|
|
309
|
+
*/
|
|
310
|
+
private _contextWarning;
|
|
311
|
+
/**
|
|
312
|
+
* True once the conversation hit the context-window limit
|
|
313
|
+
* (`CONVERSATION_LIMIT_REACHED`, or `contextExceeded` on load). Drives a
|
|
314
|
+
* blocking "start a new conversation" notice. User-facing, all variants.
|
|
315
|
+
*/
|
|
316
|
+
private _contextLimitReached;
|
|
317
|
+
/** Server-provided limit text (`CONVERSATION_LIMIT_REACHED`), if any. */
|
|
318
|
+
private _contextLimitMessage;
|
|
319
|
+
/**
|
|
320
|
+
* INTERNAL-ONLY latest telemetry snapshot (last-value-wins). Populated from
|
|
321
|
+
* `TOKEN_USAGE` events during streaming and hydrated from the conversation
|
|
322
|
+
* DTO on load. Only surfaced in the `inline` variant's debug panel.
|
|
323
|
+
*/
|
|
324
|
+
private _telemetry;
|
|
325
|
+
/**
|
|
326
|
+
* INTERNAL-ONLY per-iteration telemetry log for the debug panel's verbose
|
|
327
|
+
* table. Append-only within a turn; reset at the start of each send. Each row
|
|
328
|
+
* may be augmented with its `CACHE_CHECKPOINT` info.
|
|
329
|
+
*/
|
|
330
|
+
private _iterationLog;
|
|
331
|
+
/** Latest cache-checkpoint info keyed by iteration, for the verbose table. */
|
|
332
|
+
private _cacheCheckpoints;
|
|
333
|
+
/** Whether the internal debug panel is expanded (off by default). */
|
|
334
|
+
private _debugPanelOpen;
|
|
335
|
+
/** Current width of the debug drawer in px (user-resizable, persisted). */
|
|
336
|
+
private _debugDrawerWidth;
|
|
337
|
+
/** True while the user is dragging the debug drawer's resize handle. */
|
|
338
|
+
private _isDebugResizing;
|
|
206
339
|
/** Images staged in the composer, before the message is sent. */
|
|
207
340
|
private _pendingInternalFiles;
|
|
208
341
|
/** True while a file is being dragged over the panel (shows the drop overlay). */
|
|
@@ -212,10 +345,24 @@ export declare class KRChatbot extends LitElement {
|
|
|
212
345
|
/** Current `/` query (text after the slash), sent to `_searchSkills`. */
|
|
213
346
|
private _skillQuery;
|
|
214
347
|
/**
|
|
215
|
-
* Latest skill search results
|
|
216
|
-
*
|
|
348
|
+
* Latest org skill search results (this instance's own skills). Backs the `/`
|
|
349
|
+
* menu and the browse dialog's "Your Org" tab.
|
|
217
350
|
*/
|
|
218
351
|
private _skillResults;
|
|
352
|
+
/**
|
|
353
|
+
* Latest shared-Kodaris (global) skill results, for the browse dialog's
|
|
354
|
+
* "Kodaris" tab. Kept separate from `_skillResults` so switching tabs shows
|
|
355
|
+
* fresh results immediately instead of the other tab's stale list — the browse
|
|
356
|
+
* search fills both buffers at once.
|
|
357
|
+
*/
|
|
358
|
+
private _globalSkillResults;
|
|
359
|
+
/**
|
|
360
|
+
* AI framework UI config flags fetched from `aiFrameworkConfig` on connect.
|
|
361
|
+
* `debugTelemetryEnabled` (same server-side gate as TOKEN_USAGE emission) turns
|
|
362
|
+
* on the debug drawer toggle and the `/test-warning` / `/test-limit` composer
|
|
363
|
+
* options — known up front, before any message.
|
|
364
|
+
*/
|
|
365
|
+
private _aiFrameworkConfig;
|
|
219
366
|
/** Highlighted item in the skill menu for keyboard navigation (-1 = none). */
|
|
220
367
|
private _skillHighlighted;
|
|
221
368
|
/** Index of the message whose copy button just flashed "Copied" (-1 = none). */
|
|
@@ -223,11 +370,11 @@ export declare class KRChatbot extends LitElement {
|
|
|
223
370
|
/** Whether the "Browse all skills" dialog is open. */
|
|
224
371
|
private _skillBrowseOpened;
|
|
225
372
|
/**
|
|
226
|
-
* Active tab in the browse dialog. `org`
|
|
227
|
-
*
|
|
373
|
+
* Active tab in the browse dialog. `org` shows `_skillResults` (this instance's
|
|
374
|
+
* skills); `kodaris` shows `_globalSkillResults` (the shared global catalog).
|
|
228
375
|
*/
|
|
229
376
|
private _skillBrowseSource;
|
|
230
|
-
/** Search text in the browse dialog,
|
|
377
|
+
/** Search text in the browse dialog, routed to the active tab's search. */
|
|
231
378
|
private _skillBrowseQuery;
|
|
232
379
|
private _panelEl;
|
|
233
380
|
private _messagesEl;
|
|
@@ -296,10 +443,27 @@ export declare class KRChatbot extends LitElement {
|
|
|
296
443
|
* so we lift each hit's `_source` (already in KRChatbotSkill shape) out.
|
|
297
444
|
*/
|
|
298
445
|
private _searchSkills;
|
|
446
|
+
/**
|
|
447
|
+
* Search the shared Kodaris global-skill registry into `_globalSkillResults`
|
|
448
|
+
* (the browse dialog's "Kodaris" tab). Unlike `/aiskills/search`,
|
|
449
|
+
* `/aiskills/global/search` returns a digested list
|
|
450
|
+
* (`data: [{ code, name, description, enabled }]`) already in `KRChatbotSkill`
|
|
451
|
+
* shape, so no `_source` lifting is needed. Only the browse dialog calls this
|
|
452
|
+
* (the `/` menu is org-only), so it isn't run per slash keystroke.
|
|
453
|
+
*/
|
|
454
|
+
private _searchGlobalSkills;
|
|
455
|
+
/**
|
|
456
|
+
* Enable or disable a global skill on this instance via
|
|
457
|
+
* `/aiskills/global/{code}/enabled`, then reflect the server's result on the
|
|
458
|
+
* matching card. Ignores clicks while a request for the same code is pending.
|
|
459
|
+
*/
|
|
460
|
+
private _handleGlobalSkillEnable;
|
|
299
461
|
/** The `+` button toggles the skill/attachment menu open (showing all skills). */
|
|
300
462
|
private _handlePlusClick;
|
|
301
463
|
/** Insert `/code ` into the composer and focus it, ready for the message. */
|
|
302
464
|
private _handleSkillSelect;
|
|
465
|
+
/** Activate a skill card via keyboard (Enter/Space), since it's a div role=button. */
|
|
466
|
+
private _handleSkillCardKeydown;
|
|
303
467
|
/** Copy a message's text to the clipboard and briefly flash "Copied". */
|
|
304
468
|
private _handleCopyMessage;
|
|
305
469
|
private _handleSkillBrowseOpen;
|
|
@@ -327,20 +491,47 @@ export declare class KRChatbot extends LitElement {
|
|
|
327
491
|
private _handleClear;
|
|
328
492
|
private _handleMessagesScroll;
|
|
329
493
|
private _handleErrorDismiss;
|
|
494
|
+
private _handleContextWarningDismiss;
|
|
495
|
+
private _handleToggleDebugPanel;
|
|
496
|
+
private _handleDebugResizeMouseDown;
|
|
497
|
+
private _handleDebugResizeMouseMove;
|
|
498
|
+
private _handleDebugResizeMouseUp;
|
|
330
499
|
private _readStreamChunk;
|
|
331
500
|
private _handleStreamError;
|
|
332
501
|
/** The `/` skill menu shown above the composer while typing a slash command. */
|
|
333
502
|
private _renderSkillMenu;
|
|
334
503
|
/** The "Browse all skills" dialog — a searchable grid of Org / Kodaris cards. */
|
|
335
504
|
private _renderSkillBrowse;
|
|
336
|
-
/**
|
|
505
|
+
/**
|
|
506
|
+
* The card grid of skill search results for the browse dialog. Clicking a card
|
|
507
|
+
* inserts `/code ` into the composer. In the shared-Kodaris (`global`) tab each
|
|
508
|
+
* card also gets a `+` install button that enables the skill on this instance
|
|
509
|
+
* (turning into a ✓ once installed).
|
|
510
|
+
*/
|
|
337
511
|
private _renderSkillGrid;
|
|
512
|
+
/**
|
|
513
|
+
* The install affordance on a global skill card: a `+` button that enables the
|
|
514
|
+
* skill on this instance, showing a ✓ once installed and a disabled state
|
|
515
|
+
* while the enable/disable request is in flight.
|
|
516
|
+
*/
|
|
517
|
+
private _renderSkillInstall;
|
|
338
518
|
/**
|
|
339
519
|
* Render a user message, highlighting a leading `/skill-code` token (like the
|
|
340
520
|
* way Claude highlights slash commands). The composer only inserts valid skill
|
|
341
521
|
* codes, so any leading slash token is treated as one.
|
|
342
522
|
*/
|
|
343
523
|
private _renderUserContent;
|
|
524
|
+
/** Compact integer formatting for the debug panel (e.g. 88928 → "88,928"). */
|
|
525
|
+
private _fmtTokens;
|
|
526
|
+
/** Approximate USD formatting for the debug panel (e.g. 0.1434 → "~$0.1434"). */
|
|
527
|
+
private _fmtCost;
|
|
528
|
+
/**
|
|
529
|
+
* INTERNAL-ONLY debug telemetry panel. Rendered only in the inline variant
|
|
530
|
+
* (guarded by the caller) and only when the user has toggled it open. Shows
|
|
531
|
+
* three scopes from the latest TOKEN_USAGE event — context gauge, this turn,
|
|
532
|
+
* lifetime — plus a verbose per-iteration table. Never customer-facing.
|
|
533
|
+
*/
|
|
534
|
+
private _renderDebugPanel;
|
|
344
535
|
render(): import("lit-html").TemplateResult<1>;
|
|
345
536
|
}
|
|
346
537
|
declare global {
|
package/dist/chatbot.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chatbot.d.ts","sourceRoot":"","sources":["../src/chatbot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAsB,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"chatbot.d.ts","sourceRoot":"","sources":["../src/chatbot.ts"],"names":[],"mappings":"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"}
|