@4djs/assistant 0.1.3 → 0.1.4

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.
Files changed (37) hide show
  1. package/dist/core/chat-history.d.ts.map +1 -1
  2. package/dist/core/create-assistant-store.d.ts +2 -0
  3. package/dist/core/create-assistant-store.d.ts.map +1 -1
  4. package/dist/core/index.d.ts +5 -1
  5. package/dist/core/index.d.ts.map +1 -1
  6. package/dist/core/index.js +715 -28
  7. package/dist/core/llm-chat.d.ts +13 -0
  8. package/dist/core/llm-chat.d.ts.map +1 -1
  9. package/dist/core/llm-context-breakdown.d.ts +39 -0
  10. package/dist/core/llm-context-breakdown.d.ts.map +1 -0
  11. package/dist/core/llm-settings-storage.d.ts +3 -0
  12. package/dist/core/llm-settings-storage.d.ts.map +1 -1
  13. package/dist/core/llm-sse.d.ts +2 -0
  14. package/dist/core/llm-sse.d.ts.map +1 -1
  15. package/dist/core/llm-usage.d.ts +52 -0
  16. package/dist/core/llm-usage.d.ts.map +1 -0
  17. package/dist/core/types.d.ts +5 -0
  18. package/dist/core/types.d.ts.map +1 -1
  19. package/dist/index.js +353 -353
  20. package/dist/labels.d.ts +27 -1
  21. package/dist/labels.d.ts.map +1 -1
  22. package/dist/react/Assistant.d.ts.map +1 -1
  23. package/dist/react/components/chat/ChatComposer.d.ts +10 -2
  24. package/dist/react/components/chat/ChatComposer.d.ts.map +1 -1
  25. package/dist/react/components/chat/ContextUsageStrip.d.ts +14 -0
  26. package/dist/react/components/chat/ContextUsageStrip.d.ts.map +1 -0
  27. package/dist/react/components/chat/LlmSettingsStrip.d.ts.map +1 -1
  28. package/dist/react/components/chat/UsageToolbarButton.d.ts +24 -0
  29. package/dist/react/components/chat/UsageToolbarButton.d.ts.map +1 -0
  30. package/dist/react/components/chat/context-usage-utils.d.ts +34 -0
  31. package/dist/react/components/chat/context-usage-utils.d.ts.map +1 -0
  32. package/dist/react/index.d.ts +2 -0
  33. package/dist/react/index.d.ts.map +1 -1
  34. package/dist/react/types.d.ts +2 -0
  35. package/dist/react/types.d.ts.map +1 -1
  36. package/dist/styles.css +216 -5
  37. package/package.json +1 -1
@@ -1,5 +1,7 @@
1
1
  import type { ReplySuggestions } from "./interactive-tools/index.js";
2
+ import type { ContextUsageBreakdown } from "./llm-context-breakdown.js";
2
3
  import type { ClientToolDefinition, LlmChatMessage, OpenAiToolCall } from "./llm-types.js";
4
+ import { type LlmUsageRecord } from "./llm-usage.js";
3
5
  import type { AssistantToolDefinition, AssistantToolResult } from "./types.js";
4
6
  export declare class LlmNotConfiguredError extends Error {
5
7
  readonly code = "LLM_DISABLED";
@@ -21,6 +23,7 @@ export declare class ChatAbortedError extends Error {
21
23
  export interface StreamHandlers {
22
24
  turnId: string;
23
25
  onUpdate: (content: string) => void;
26
+ onUsage?: (usage: LlmUsageRecord) => void;
24
27
  }
25
28
  export interface ToolHandlers {
26
29
  onStart: (step: {
@@ -48,6 +51,9 @@ export interface AgentStepResult {
48
51
  }>;
49
52
  apiMessages: LlmChatMessage[];
50
53
  lastToolResult?: AssistantToolResult;
54
+ usages: LlmUsageRecord[];
55
+ model: string | null;
56
+ contextBreakdown: ContextUsageBreakdown | null;
51
57
  }
52
58
  export declare function fetchLlmStatus(): Promise<LlmChatStatus>;
53
59
  export declare function requestLlmCompletion(input: {
@@ -64,7 +70,13 @@ export declare function requestLlmCompletion(input: {
64
70
  content: string | null;
65
71
  toolCalls: OpenAiToolCall[];
66
72
  model: string;
73
+ usage: LlmUsageRecord | null;
67
74
  }>;
75
+ export declare function computeBaselineContextBreakdown(input: {
76
+ tools: AssistantToolDefinition[];
77
+ model: string;
78
+ modelContextWindows?: Record<string, number>;
79
+ }): Promise<ContextUsageBreakdown>;
68
80
  export declare function runLlmAgent(input: {
69
81
  userMessage: string;
70
82
  history: LlmChatMessage[];
@@ -75,6 +87,7 @@ export declare function runLlmAgent(input: {
75
87
  toolHandlers?: ToolHandlers;
76
88
  invokeTool: (name: string, args: Record<string, unknown>) => Promise<AssistantToolResult>;
77
89
  onPostResponseTool?: (suggestions: ReplySuggestions) => void;
90
+ modelContextWindows?: Record<string, number>;
78
91
  }): Promise<AgentStepResult>;
79
92
  /** Drop tool messages that are not preceded by a matching assistant tool_calls entry. */
80
93
  export declare function sanitizeLlmMessages(messages: LlmChatMessage[]): LlmChatMessage[];
@@ -1 +1 @@
1
- {"version":3,"file":"llm-chat.d.ts","sourceRoot":"","sources":["../../src/core/llm-chat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAwBrE,OAAO,KAAK,EACV,oBAAoB,EACpB,cAAc,EACd,cAAc,EACf,MAAM,gBAAgB,CAAC;AAGxB,OAAO,KAAK,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAO/E,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,QAAQ,CAAC,IAAI,kBAAkB;gBAG7B,OAAO,SAAqE;CAK/E;AAED,qBAAa,gBAAiB,SAAQ,KAAK;IACzC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBAEV,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,SAAuB;CAMzE;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,qBAAa,gBAAiB,SAAQ,KAAK;;CAK1C;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,CAAC,IAAI,EAAE;QACd,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9B,MAAM,EAAE,MAAM,CAAC;KAChB,KAAK,IAAI,CAAC;IACX,QAAQ,EAAE,CACR,MAAM,EAAE,MAAM,EACd,MAAM,EAAE;QACN,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;QACzB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,KACE,IAAI,CAAC;CACX;AAED,MAAM,WAAW,eAAe;IAC9B,iBAAiB,EAAE,KAAK,CAAC;QACvB,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,CAAC;QAC3D,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,CAAC,CAAC;IACH,WAAW,EAAE,cAAc,EAAE,CAAC;IAC9B,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,aAAa,CAAC,CAkB7D;AAED,wBAAsB,oBAAoB,CAAC,KAAK,EAAE;IAChD,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,KAAK,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE;QAAE,IAAI,EAAE,aAAa,CAAA;KAAE,CAAC;IACzC,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,GAAG,OAAO,CAAC;IACV,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;CACf,CAAC,CAgDD;AAyED,wBAAsB,WAAW,CAAC,KAAK,EAAE;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,KAAK,EAAE,uBAAuB,EAAE,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,UAAU,EAAE,CACV,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC1B,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAClC,kBAAkB,CAAC,EAAE,CAAC,WAAW,EAAE,gBAAgB,KAAK,IAAI,CAAC;CAC9D,GAAG,OAAO,CAAC,eAAe,CAAC,CA4M3B;AAqCD,yFAAyF;AACzF,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,cAAc,EAAE,GACzB,cAAc,EAAE,CAkClB;AAED,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,KAAK,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,EAAE,KAAK,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,OAAO,CAAC;KAClB,CAAC,CAAC;IACH,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;CAC5D,CAAC,GACD,cAAc,EAAE,CAsElB"}
1
+ {"version":3,"file":"llm-chat.d.ts","sourceRoot":"","sources":["../../src/core/llm-chat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAwBrE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAExE,OAAO,KAAK,EACV,oBAAoB,EACpB,cAAc,EACd,cAAc,EACf,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,cAAc,EAAc,MAAM,gBAAgB,CAAC;AAGjE,OAAO,KAAK,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAO/E,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,QAAQ,CAAC,IAAI,kBAAkB;gBAG7B,OAAO,SAAqE;CAK/E;AAED,qBAAa,gBAAiB,SAAQ,KAAK;IACzC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;gBAEV,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,SAAuB;CAMzE;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,qBAAa,gBAAiB,SAAQ,KAAK;;CAK1C;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;CAC3C;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,CAAC,IAAI,EAAE;QACd,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9B,MAAM,EAAE,MAAM,CAAC;KAChB,KAAK,IAAI,CAAC;IACX,QAAQ,EAAE,CACR,MAAM,EAAE,MAAM,EACd,MAAM,EAAE;QACN,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;QACzB,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,KACE,IAAI,CAAC;CACX;AAED,MAAM,WAAW,eAAe;IAC9B,iBAAiB,EAAE,KAAK,CAAC;QACvB,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SAAE,CAAC;QAC3D,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,CAAC,CAAC;IACH,WAAW,EAAE,cAAc,EAAE,CAAC;IAC9B,cAAc,CAAC,EAAE,mBAAmB,CAAC;IACrC,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,gBAAgB,EAAE,qBAAqB,GAAG,IAAI,CAAC;CAChD;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,aAAa,CAAC,CAkB7D;AAED,wBAAsB,oBAAoB,CAAC,KAAK,EAAE;IAChD,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,KAAK,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE;QAAE,IAAI,EAAE,aAAa,CAAA;KAAE,CAAC;IACzC,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB,GAAG,OAAO,CAAC;IACV,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;CAC9B,CAAC,CAiDD;AAkFD,wBAAsB,+BAA+B,CAAC,KAAK,EAAE;IAC3D,KAAK,EAAE,uBAAuB,EAAE,CAAC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9C,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAkBjC;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,KAAK,EAAE,uBAAuB,EAAE,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,MAAM,CAAC,EAAE,cAAc,CAAC;IACxB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,UAAU,EAAE,CACV,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC1B,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAClC,kBAAkB,CAAC,EAAE,CAAC,WAAW,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC7D,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9C,GAAG,OAAO,CAAC,eAAe,CAAC,CAwO3B;AAqCD,yFAAyF;AACzF,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,cAAc,EAAE,GACzB,cAAc,EAAE,CAkClB;AAED,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,KAAK,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,EAAE,KAAK,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,OAAO,CAAC;KAClB,CAAC,CAAC;IACH,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;CAC5D,CAAC,GACD,cAAc,EAAE,CAsElB"}
@@ -0,0 +1,39 @@
1
+ import type { ClientToolDefinition, LlmChatMessage } from "./llm-types.js";
2
+ import type { LlmUsageRecord } from "./llm-usage.js";
3
+ export type ContextUsageCategory = "systemPrompt" | "toolDefinitions" | "conversation" | "completion" | "cached" | "reasoning";
4
+ export interface ContextCategorySegment {
5
+ id: ContextUsageCategory;
6
+ tokens: number;
7
+ /** True when scaled from character estimates rather than provider-reported splits */
8
+ estimated?: boolean;
9
+ }
10
+ export interface ContextUsageBreakdown {
11
+ segments: ContextCategorySegment[];
12
+ promptTokens: number;
13
+ completionTokens: number;
14
+ totalTokens: number;
15
+ contextWindow: number | null;
16
+ contextUsedPercent: number | null;
17
+ }
18
+ /** Rough token estimate (~4 chars/token) — suitable for UI proportions, not billing. */
19
+ export declare function estimateTokenCount(text: string): number;
20
+ export declare function estimatePromptParts(input: {
21
+ systemPrompt: string;
22
+ tools: ClientToolDefinition[];
23
+ messages: LlmChatMessage[];
24
+ }): {
25
+ systemPrompt: number;
26
+ toolDefinitions: number;
27
+ conversation: number;
28
+ };
29
+ export declare function buildContextBreakdown(input: {
30
+ systemPrompt: string;
31
+ tools: ClientToolDefinition[];
32
+ messages: LlmChatMessage[];
33
+ usage: LlmUsageRecord | null;
34
+ model: string;
35
+ modelContextWindows?: Record<string, number>;
36
+ }): ContextUsageBreakdown;
37
+ export declare function mergeBreakdownSegments(target: ContextUsageBreakdown, source: ContextUsageBreakdown): ContextUsageBreakdown;
38
+ export declare function formatApproxTokens(value: number): string;
39
+ //# sourceMappingURL=llm-context-breakdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"llm-context-breakdown.d.ts","sourceRoot":"","sources":["../../src/core/llm-context-breakdown.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGrD,MAAM,MAAM,oBAAoB,GAC5B,cAAc,GACd,iBAAiB,GACjB,cAAc,GACd,YAAY,GACZ,QAAQ,GACR,WAAW,CAAC;AAEhB,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,oBAAoB,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,qFAAqF;IACrF,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAED,wFAAwF;AACxF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAGvD;AAuCD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAC9B,QAAQ,EAAE,cAAc,EAAE,CAAC;CAC5B,GAAG;IACF,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;CACtB,CAMA;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAC3C,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAC9B,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9C,GAAG,qBAAqB,CAuExB;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,qBAAqB,EAC7B,MAAM,EAAE,qBAAqB,GAC5B,qBAAqB,CAgCvB;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGxD"}
@@ -41,6 +41,9 @@ export declare function createLlmSettingsStorage(storageKey: string): {
41
41
  clear(): void;
42
42
  hasStored(): boolean;
43
43
  };
44
+ export declare function maskApiKey(apiKey: string, visibleHead?: number, visibleTail?: number): string;
45
+ export declare function isUnchangedApiKeyInput(input: string, existingApiKey: string | null): boolean;
46
+ export declare function apiKeyFormDisplayValue(apiKey: string | null): string;
44
47
  export declare function toStoredSettings(values: LlmSettingsFormValues, existingApiKey: string | null): StoredLlmUserSettings;
45
48
  export declare function createLlmSettingsFormState(settings: AssistantLlmSettings, hasStoredApiKey: boolean, defaultSystemPrompt?: string): LlmSettingsFormState;
46
49
  export declare function createLlmSettingsFormStateFromStored(stored: StoredLlmUserSettings, defaultSystemPrompt?: string): LlmSettingsFormState;
@@ -1 +1 @@
1
- {"version":3,"file":"llm-settings-storage.d.ts","sourceRoot":"","sources":["../../src/core/llm-settings-storage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llm-settings-storage.d.ts","sourceRoot":"","sources":["../../src/core/llm-settings-storage.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,11 @@
1
1
  import type { OpenAiToolCall } from "./llm-types.js";
2
+ import { type LlmUsageRecord } from "./llm-usage.js";
2
3
  export interface ParsedStreamChunk {
3
4
  contentDelta: string;
4
5
  content: string;
5
6
  toolCalls: OpenAiToolCall[];
6
7
  model: string | null;
8
+ usage: LlmUsageRecord | null;
7
9
  done: boolean;
8
10
  }
9
11
  export declare function createStreamParser(): {
@@ -1 +1 @@
1
- {"version":3,"file":"llm-sse.d.ts","sourceRoot":"","sources":["../../src/core/llm-sse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAQrD,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;CACf;AAED,wBAAgB,kBAAkB;uBAiBN,MAAM,KAAG,iBAAiB,GAAG,IAAI;EAuE5D;AAED,wBAAsB,aAAa,CACjC,IAAI,EAAE,cAAc,CAAC,UAAU,CAAC,EAChC,OAAO,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,EAC3C,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,iBAAiB,CAAC,CAuD5B"}
1
+ {"version":3,"file":"llm-sse.d.ts","sourceRoot":"","sources":["../../src/core/llm-sse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,KAAK,cAAc,EAAc,MAAM,gBAAgB,CAAC;AAQjE,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IAC7B,IAAI,EAAE,OAAO,CAAC;CACf;AAED,wBAAgB,kBAAkB;uBAkBN,MAAM,KAAG,iBAAiB,GAAG,IAAI;EA4E5D;AAED,wBAAsB,aAAa,CACjC,IAAI,EAAE,cAAc,CAAC,UAAU,CAAC,EAChC,OAAO,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,EAC3C,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,iBAAiB,CAAC,CAwD5B"}
@@ -0,0 +1,52 @@
1
+ import type { ContextUsageBreakdown } from "./llm-context-breakdown.js";
2
+ /** Token usage from a single LLM completion response. */
3
+ export interface LlmUsageRecord {
4
+ promptTokens: number;
5
+ completionTokens: number;
6
+ totalTokens: number;
7
+ cachedTokens?: number;
8
+ reasoningTokens?: number;
9
+ }
10
+ /** Aggregated usage for one user turn (may include multiple LLM requests). */
11
+ export interface LlmTurnUsage extends LlmUsageRecord {
12
+ model: string;
13
+ durationMs: number;
14
+ tokensPerSecond: number | null;
15
+ contextWindow: number | null;
16
+ contextUsedPercent: number | null;
17
+ requestCount: number;
18
+ streaming?: boolean;
19
+ /** Prompt split by category (system, tools, conversation, completion, …) */
20
+ contextBreakdown?: ContextUsageBreakdown;
21
+ }
22
+ export interface LlmSessionUsage {
23
+ session: {
24
+ promptTokens: number;
25
+ completionTokens: number;
26
+ totalTokens: number;
27
+ requestCount: number;
28
+ };
29
+ currentTurn: LlmTurnUsage | null;
30
+ /** Estimated context for system prompt + tools before any conversation */
31
+ baselineBreakdown: ContextUsageBreakdown | null;
32
+ }
33
+ export declare function parseUsage(raw: unknown): LlmUsageRecord | null;
34
+ export declare function aggregateUsage(usages: LlmUsageRecord[]): LlmUsageRecord;
35
+ export declare function resolveContextWindow(model: string, overrides?: Record<string, number>): number | null;
36
+ export declare function computeTokensPerSecond(completionTokens: number, durationMs: number): number | null;
37
+ export declare function buildTurnUsage(input: {
38
+ usages: LlmUsageRecord[];
39
+ model: string;
40
+ durationMs: number;
41
+ modelContextWindows?: Record<string, number>;
42
+ streaming?: boolean;
43
+ }): LlmTurnUsage;
44
+ export declare function appendSessionUsage(previous: LlmSessionUsage | null, turn: LlmTurnUsage): LlmSessionUsage;
45
+ export declare function createEmptySessionUsage(): LlmSessionUsage;
46
+ export declare function isStoredLlmTurnUsage(value: unknown): value is LlmTurnUsage;
47
+ export declare function rebuildSessionUsageFromMessages(messages: Array<{
48
+ role: string;
49
+ llmUsage?: LlmTurnUsage;
50
+ }>): LlmSessionUsage | null;
51
+ export declare function formatTokenCount(value: number): string;
52
+ //# sourceMappingURL=llm-usage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"llm-usage.d.ts","sourceRoot":"","sources":["../../src/core/llm-usage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAExE,yDAAyD;AACzD,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,8EAA8E;AAC9E,MAAM,WAAW,YAAa,SAAQ,cAAc;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;CAC1C;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE;QACP,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,WAAW,EAAE,YAAY,GAAG,IAAI,CAAC;IACjC,0EAA0E;IAC1E,iBAAiB,EAAE,qBAAqB,GAAG,IAAI,CAAC;CACjD;AA2RD,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,cAAc,GAAG,IAAI,CA6B9D;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,cAAc,CAkBvE;AAED,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,EACb,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACjC,MAAM,GAAG,IAAI,CAoBf;AAED,wBAAgB,sBAAsB,CACpC,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,MAAM,GACjB,MAAM,GAAG,IAAI,CAGf;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE;IACpC,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7C,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,GAAG,YAAY,CAwBf;AAED,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,eAAe,GAAG,IAAI,EAChC,IAAI,EAAE,YAAY,GACjB,eAAe,CAkBjB;AAED,wBAAgB,uBAAuB,IAAI,eAAe,CAWzD;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,YAAY,CAgB1E;AAED,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,YAAY,CAAA;CAAE,CAAC,GACzD,eAAe,GAAG,IAAI,CAUxB;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKtD"}
@@ -1,5 +1,6 @@
1
1
  import type { ChatActivityStep } from "./chat-activity.js";
2
2
  import type { ReplySuggestions } from "./interactive-tools/index.js";
3
+ import type { LlmTurnUsage } from "./llm-usage.js";
3
4
  import type { AssistantToolRegistry } from "./tool-registry.js";
4
5
  export type JsonSchema = Record<string, unknown>;
5
6
  export interface AssistantToolDefinition {
@@ -29,6 +30,8 @@ export interface AssistantMessage {
29
30
  isError?: boolean;
30
31
  llmSetupRequired?: boolean;
31
32
  streaming?: boolean;
33
+ /** LLM usage metrics for this assistant turn */
34
+ llmUsage?: LlmTurnUsage;
32
35
  timestamp: number;
33
36
  }
34
37
  export interface AssistantSuggestedPrompt {
@@ -73,5 +76,7 @@ export interface AssistantStoreDependencies {
73
76
  message: string;
74
77
  tools: AssistantToolDefinition[];
75
78
  }) => Promise<AssistantMessage | null>;
79
+ /** Optional model id → context window (tokens). Merged with built-in defaults. */
80
+ modelContextWindows?: Record<string, number>;
76
81
  }
77
82
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}