@pentoshi/clai 4.1.0 → 4.2.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.
Files changed (266) hide show
  1. package/README.md +14 -0
  2. package/dist/agent/compaction-executor.d.ts +68 -0
  3. package/dist/agent/compaction-executor.js +343 -0
  4. package/dist/agent/compaction-executor.js.map +1 -0
  5. package/dist/agent/context-breakdown.js +2 -0
  6. package/dist/agent/context-breakdown.js.map +1 -1
  7. package/dist/agent/context-manager.d.ts +23 -9
  8. package/dist/agent/context-manager.js +72 -43
  9. package/dist/agent/context-manager.js.map +1 -1
  10. package/dist/agent/events.d.ts +3 -0
  11. package/dist/agent/loop-guard.d.ts +2 -0
  12. package/dist/agent/loop-guard.js +48 -3
  13. package/dist/agent/loop-guard.js.map +1 -1
  14. package/dist/agent/prompt-composer.js +6 -6
  15. package/dist/agent/prompt-composer.js.map +1 -1
  16. package/dist/agent/reliability-policy.d.ts +1 -0
  17. package/dist/agent/reliability-policy.js +6 -3
  18. package/dist/agent/reliability-policy.js.map +1 -1
  19. package/dist/agent/request-accounting.d.ts +97 -0
  20. package/dist/agent/request-accounting.js +207 -0
  21. package/dist/agent/request-accounting.js.map +1 -0
  22. package/dist/agent/request-budget.d.ts +2 -2
  23. package/dist/agent/request-budget.js +2 -4
  24. package/dist/agent/request-budget.js.map +1 -1
  25. package/dist/agent/runner.d.ts +8 -2
  26. package/dist/agent/runner.js +409 -178
  27. package/dist/agent/runner.js.map +1 -1
  28. package/dist/agent/session-title.d.ts +0 -26
  29. package/dist/agent/session-title.js +0 -80
  30. package/dist/agent/session-title.js.map +1 -1
  31. package/dist/agent/tool-history.d.ts +2 -2
  32. package/dist/agent/tool-history.js +19 -6
  33. package/dist/agent/tool-history.js.map +1 -1
  34. package/dist/app/adapters/agent-event-adapter.js +19 -0
  35. package/dist/app/adapters/agent-event-adapter.js.map +1 -1
  36. package/dist/app/adapters/current-agent-adapter.js +4 -0
  37. package/dist/app/adapters/current-agent-adapter.js.map +1 -1
  38. package/dist/app/commands/catalog.js +24 -0
  39. package/dist/app/commands/catalog.js.map +1 -1
  40. package/dist/app/controllers/cancel-coordinator.d.ts +51 -0
  41. package/dist/app/controllers/cancel-coordinator.js +48 -0
  42. package/dist/app/controllers/cancel-coordinator.js.map +1 -0
  43. package/dist/app/controllers/session-compact-helper.d.ts +19 -2
  44. package/dist/app/controllers/session-compact-helper.js +100 -127
  45. package/dist/app/controllers/session-compact-helper.js.map +1 -1
  46. package/dist/app/controllers/session-context-usage.d.ts +32 -15
  47. package/dist/app/controllers/session-context-usage.js +186 -51
  48. package/dist/app/controllers/session-context-usage.js.map +1 -1
  49. package/dist/app/controllers/session-controller.d.ts +20 -11
  50. package/dist/app/controllers/session-controller.js +111 -90
  51. package/dist/app/controllers/session-controller.js.map +1 -1
  52. package/dist/app/controllers/session-naming.d.ts +31 -0
  53. package/dist/app/controllers/session-naming.js +173 -0
  54. package/dist/app/controllers/session-naming.js.map +1 -0
  55. package/dist/app/controllers/session-persistence.d.ts +2 -2
  56. package/dist/app/controllers/session-persistence.js +3 -6
  57. package/dist/app/controllers/session-persistence.js.map +1 -1
  58. package/dist/app/controllers/session-turn-request.d.ts +2 -1
  59. package/dist/app/controllers/session-turn-request.js +3 -0
  60. package/dist/app/controllers/session-turn-request.js.map +1 -1
  61. package/dist/app/controllers/turn-controller.d.ts +2 -1
  62. package/dist/app/controllers/turn-controller.js +1 -0
  63. package/dist/app/controllers/turn-controller.js.map +1 -1
  64. package/dist/app/events/app-event.d.ts +9 -0
  65. package/dist/app/events/app-event.js.map +1 -1
  66. package/dist/app/ports/agent-port.d.ts +8 -1
  67. package/dist/classic/app/ClassicApp.js +2 -1
  68. package/dist/classic/app/ClassicApp.js.map +1 -1
  69. package/dist/classic/app/app-wiring.js +1 -2
  70. package/dist/classic/app/app-wiring.js.map +1 -1
  71. package/dist/classic/app/wiring-interactions.js +2 -7
  72. package/dist/classic/app/wiring-interactions.js.map +1 -1
  73. package/dist/classic/blocks/tool-lines.js +2 -1
  74. package/dist/classic/blocks/tool-lines.js.map +1 -1
  75. package/dist/classic/input/cancel-ladder.d.ts +2 -19
  76. package/dist/classic/input/cancel-ladder.js +13 -20
  77. package/dist/classic/input/cancel-ladder.js.map +1 -1
  78. package/dist/commands/providers.js +2 -0
  79. package/dist/commands/providers.js.map +1 -1
  80. package/dist/llm/adapters/anthropic-tools.d.ts +31 -14
  81. package/dist/llm/adapters/anthropic-tools.js +124 -29
  82. package/dist/llm/adapters/anthropic-tools.js.map +1 -1
  83. package/dist/llm/adapters/gemini-tools.d.ts +16 -4
  84. package/dist/llm/adapters/gemini-tools.js +117 -16
  85. package/dist/llm/adapters/gemini-tools.js.map +1 -1
  86. package/dist/llm/adapters/openai-tools.d.ts +13 -2
  87. package/dist/llm/adapters/openai-tools.js +58 -11
  88. package/dist/llm/adapters/openai-tools.js.map +1 -1
  89. package/dist/llm/agentrouter.js +68 -45
  90. package/dist/llm/agentrouter.js.map +1 -1
  91. package/dist/llm/anthropic.js +69 -36
  92. package/dist/llm/anthropic.js.map +1 -1
  93. package/dist/llm/aws-mantle.js +70 -32
  94. package/dist/llm/aws-mantle.js.map +1 -1
  95. package/dist/llm/bynara.js +26 -69
  96. package/dist/llm/bynara.js.map +1 -1
  97. package/dist/llm/capabilities.d.ts +2 -1
  98. package/dist/llm/capabilities.js +47 -0
  99. package/dist/llm/capabilities.js.map +1 -1
  100. package/dist/llm/context-snapshot.d.ts +100 -0
  101. package/dist/llm/context-snapshot.js +277 -0
  102. package/dist/llm/context-snapshot.js.map +1 -0
  103. package/dist/llm/context-windows.d.ts +10 -0
  104. package/dist/llm/context-windows.js +129 -0
  105. package/dist/llm/context-windows.js.map +1 -0
  106. package/dist/llm/custom-provider-profile.d.ts +75 -0
  107. package/dist/llm/custom-provider-profile.js +558 -0
  108. package/dist/llm/custom-provider-profile.js.map +1 -0
  109. package/dist/llm/custom-providers.d.ts +13 -1
  110. package/dist/llm/custom-providers.js +77 -25
  111. package/dist/llm/custom-providers.js.map +1 -1
  112. package/dist/llm/effort-fallback.d.ts +44 -0
  113. package/dist/llm/effort-fallback.js +101 -0
  114. package/dist/llm/effort-fallback.js.map +1 -0
  115. package/dist/llm/fireworks.js +4 -0
  116. package/dist/llm/fireworks.js.map +1 -1
  117. package/dist/llm/free.js +4 -0
  118. package/dist/llm/free.js.map +1 -1
  119. package/dist/llm/gemini.d.ts +1 -1
  120. package/dist/llm/gemini.js +89 -51
  121. package/dist/llm/gemini.js.map +1 -1
  122. package/dist/llm/groq.js +4 -0
  123. package/dist/llm/groq.js.map +1 -1
  124. package/dist/llm/hetzner.js +4 -0
  125. package/dist/llm/hetzner.js.map +1 -1
  126. package/dist/llm/http.d.ts +49 -10
  127. package/dist/llm/http.js +417 -153
  128. package/dist/llm/http.js.map +1 -1
  129. package/dist/llm/kimchi.js +4 -0
  130. package/dist/llm/kimchi.js.map +1 -1
  131. package/dist/llm/lightning.js +4 -0
  132. package/dist/llm/lightning.js.map +1 -1
  133. package/dist/llm/meta.d.ts +2 -0
  134. package/dist/llm/meta.js +811 -655
  135. package/dist/llm/meta.js.map +1 -1
  136. package/dist/llm/modal.js +4 -0
  137. package/dist/llm/modal.js.map +1 -1
  138. package/dist/llm/model-families.d.ts +9 -0
  139. package/dist/llm/model-families.js +39 -0
  140. package/dist/llm/model-families.js.map +1 -0
  141. package/dist/llm/nvidia.js +4 -0
  142. package/dist/llm/nvidia.js.map +1 -1
  143. package/dist/llm/ollama.js +44 -40
  144. package/dist/llm/ollama.js.map +1 -1
  145. package/dist/llm/openai.js +4 -0
  146. package/dist/llm/openai.js.map +1 -1
  147. package/dist/llm/openrouter.js +4 -0
  148. package/dist/llm/openrouter.js.map +1 -1
  149. package/dist/llm/operation-ledger.d.ts +60 -0
  150. package/dist/llm/operation-ledger.js +136 -0
  151. package/dist/llm/operation-ledger.js.map +1 -0
  152. package/dist/llm/operation-usage.d.ts +32 -0
  153. package/dist/llm/operation-usage.js +172 -0
  154. package/dist/llm/operation-usage.js.map +1 -0
  155. package/dist/llm/orcarouter.d.ts +7 -0
  156. package/dist/llm/orcarouter.js +166 -0
  157. package/dist/llm/orcarouter.js.map +1 -0
  158. package/dist/llm/provider-profile-layers.d.ts +7 -0
  159. package/dist/llm/provider-profile-layers.js +961 -0
  160. package/dist/llm/provider-profile-layers.js.map +1 -0
  161. package/dist/llm/provider-profile.d.ts +181 -0
  162. package/dist/llm/provider-profile.js +329 -0
  163. package/dist/llm/provider-profile.js.map +1 -0
  164. package/dist/llm/provider-profiles.d.ts +13 -0
  165. package/dist/llm/provider-profiles.js +86 -0
  166. package/dist/llm/provider-profiles.js.map +1 -0
  167. package/dist/llm/provider.d.ts +2 -0
  168. package/dist/llm/provider.js +67 -0
  169. package/dist/llm/provider.js.map +1 -1
  170. package/dist/llm/qwen-cloud.js +4 -0
  171. package/dist/llm/qwen-cloud.js.map +1 -1
  172. package/dist/llm/reasoning-artifacts.d.ts +101 -0
  173. package/dist/llm/reasoning-artifacts.js +440 -0
  174. package/dist/llm/reasoning-artifacts.js.map +1 -0
  175. package/dist/llm/request-fingerprint.d.ts +10 -0
  176. package/dist/llm/request-fingerprint.js +313 -0
  177. package/dist/llm/request-fingerprint.js.map +1 -0
  178. package/dist/llm/request-plan.d.ts +119 -0
  179. package/dist/llm/request-plan.js +279 -0
  180. package/dist/llm/request-plan.js.map +1 -0
  181. package/dist/llm/router.d.ts +19 -1
  182. package/dist/llm/router.js +447 -75
  183. package/dist/llm/router.js.map +1 -1
  184. package/dist/llm/stream-events.d.ts +47 -0
  185. package/dist/llm/stream-events.js +55 -0
  186. package/dist/llm/stream-events.js.map +1 -0
  187. package/dist/llm/stream-terminal.d.ts +30 -0
  188. package/dist/llm/stream-terminal.js +51 -0
  189. package/dist/llm/stream-terminal.js.map +1 -0
  190. package/dist/llm/token-estimate-calibration.d.ts +23 -0
  191. package/dist/llm/token-estimate-calibration.js +140 -0
  192. package/dist/llm/token-estimate-calibration.js.map +1 -0
  193. package/dist/llm/token-usage.d.ts +35 -5
  194. package/dist/llm/token-usage.js +212 -162
  195. package/dist/llm/token-usage.js.map +1 -1
  196. package/dist/llm/tokenrouter.js +8 -2
  197. package/dist/llm/tokenrouter.js.map +1 -1
  198. package/dist/modes/ask.js +11 -5
  199. package/dist/modes/ask.js.map +1 -1
  200. package/dist/noninteractive/start-noninteractive.js +31 -2
  201. package/dist/noninteractive/start-noninteractive.js.map +1 -1
  202. package/dist/noninteractive/stream-blocks.js +15 -4
  203. package/dist/noninteractive/stream-blocks.js.map +1 -1
  204. package/dist/prompts/embedded.js +1 -1
  205. package/dist/prompts/embedded.js.map +1 -1
  206. package/dist/prompts/system.agent.md +6 -0
  207. package/dist/store/config.js +5 -1
  208. package/dist/store/config.js.map +1 -1
  209. package/dist/store/history.d.ts +2 -0
  210. package/dist/store/history.js +19 -10
  211. package/dist/store/history.js.map +1 -1
  212. package/dist/store/keys.js +11 -1
  213. package/dist/store/keys.js.map +1 -1
  214. package/dist/store/plan.js +20 -14
  215. package/dist/store/plan.js.map +1 -1
  216. package/dist/tools/elevated-shell.d.ts +1 -1
  217. package/dist/tools/elevated-shell.js +24 -72
  218. package/dist/tools/elevated-shell.js.map +1 -1
  219. package/dist/tools/nmap-runner.js +30 -36
  220. package/dist/tools/nmap-runner.js.map +1 -1
  221. package/dist/tools/sudo-session.d.ts +83 -0
  222. package/dist/tools/sudo-session.js +124 -0
  223. package/dist/tools/sudo-session.js.map +1 -0
  224. package/dist/tui-v2/app/App.js +9 -24
  225. package/dist/tui-v2/app/App.js.map +1 -1
  226. package/dist/tui-v2/components/status/context-limit-chip.js +2 -2
  227. package/dist/tui-v2/components/status/context-limit-chip.js.map +1 -1
  228. package/dist/tui-v2/components/transcript/intro-card.js +2 -1
  229. package/dist/tui-v2/components/transcript/intro-card.js.map +1 -1
  230. package/dist/tui-v2/composer/composer-editor.js +2 -1
  231. package/dist/tui-v2/composer/composer-editor.js.map +1 -1
  232. package/dist/types.d.ts +156 -1
  233. package/dist/types.js +1 -0
  234. package/dist/types.js.map +1 -1
  235. package/dist/ui-core/bootstrap/composition-root.d.ts +2 -0
  236. package/dist/ui-core/bootstrap/composition-root.js +26 -3
  237. package/dist/ui-core/bootstrap/composition-root.js.map +1 -1
  238. package/dist/ui-core/commands/picker-commands.js +11 -5
  239. package/dist/ui-core/commands/picker-commands.js.map +1 -1
  240. package/dist/ui-core/commands/session-commands.js +41 -5
  241. package/dist/ui-core/commands/session-commands.js.map +1 -1
  242. package/dist/ui-core/plan/plan-lifecycle.js +3 -2
  243. package/dist/ui-core/plan/plan-lifecycle.js.map +1 -1
  244. package/dist/ui-core/rendering/context-limit.js +4 -1
  245. package/dist/ui-core/rendering/context-limit.js.map +1 -1
  246. package/dist/ui-core/rendering/duration.d.ts +2 -1
  247. package/dist/ui-core/rendering/duration.js +13 -5
  248. package/dist/ui-core/rendering/duration.js.map +1 -1
  249. package/dist/ui-core/rendering/intro-header.js +2 -2
  250. package/dist/ui-core/rendering/intro-header.js.map +1 -1
  251. package/dist/ui-core/rendering/theme.d.ts +1 -0
  252. package/dist/ui-core/rendering/theme.js +2 -0
  253. package/dist/ui-core/rendering/theme.js.map +1 -1
  254. package/dist/ui-core/state/transcript-hydrate.js +3 -3
  255. package/dist/ui-core/state/transcript-hydrate.js.map +1 -1
  256. package/dist/ui-core/state/transcript-reducer.d.ts +5 -0
  257. package/dist/ui-core/state/transcript-reducer.js +76 -3
  258. package/dist/ui-core/state/transcript-reducer.js.map +1 -1
  259. package/dist/ui-core/state/transcript-store.d.ts +10 -1
  260. package/dist/ui-core/state/transcript-store.js +22 -1
  261. package/dist/ui-core/state/transcript-store.js.map +1 -1
  262. package/dist/ui-core/state/transcript-types.d.ts +2 -0
  263. package/dist/ui-core/state/transcript-types.js.map +1 -1
  264. package/dist/version.generated.d.ts +2 -2
  265. package/dist/version.generated.js +2 -2
  266. package/package.json +6 -1
package/dist/types.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export declare const providerIds: readonly ["free", "groq", "gemini", "openrouter", "openai", "anthropic", "nvidia", "agentrouter", "kimchi", "aws-mantle", "ollama", "bynara", "qwen-cloud", "modal", "lightning", "tokenrouter", "meta", "fireworks", "hetzner"];
1
+ export declare const providerIds: readonly ["free", "groq", "gemini", "openrouter", "openai", "anthropic", "nvidia", "agentrouter", "kimchi", "aws-mantle", "ollama", "bynara", "qwen-cloud", "modal", "lightning", "tokenrouter", "meta", "fireworks", "hetzner", "orcarouter"];
2
2
  export type ProviderId = (typeof providerIds)[number];
3
3
  export type Mode = "ask" | "agent" | "plan";
4
4
  export type RiskLevel = "safe" | "confirm" | "block";
@@ -53,6 +53,74 @@ export interface ReasoningBlock {
53
53
  */
54
54
  items?: Array<Record<string, unknown>> | undefined;
55
55
  }
56
+ /** Canonical raw-state formats captured from reasoning-capable routes. */
57
+ export type ReasoningArtifactKind = "plaintext" | "signed" | "encrypted" | "structured-details" | "thought-signature" | "summary";
58
+ /** Wire dialect that originally produced the artifact. */
59
+ export type ReasoningArtifactDialect = "anthropic-messages" | "gemini-generate-content" | "meta-responses" | "openai-compatible" | "ollama-chat" | "legacy";
60
+ /** How long an artifact can legally remain on the provider replay timeline. */
61
+ export type ReasoningArtifactReplayScope = "none" | "tool-turn" | "next-turn" | "all-history";
62
+ /** Whether a final assistant turn may persist the artifact. */
63
+ export type ReasoningArtifactPersistence = "never" | "tool-turn" | "final-turn" | "all-turns";
64
+ /** Original part/call placement, preserved independently of display text. */
65
+ export interface ReasoningArtifactPosition {
66
+ readonly sequence: number;
67
+ readonly placement: "assistant" | "before-tool-call" | "on-tool-call";
68
+ readonly toolCallId?: string | undefined;
69
+ readonly toolCallIndex?: number | undefined;
70
+ }
71
+ /**
72
+ * Origin metadata used for conservative replay. `endpointHash` is a SHA-256
73
+ * identifier, never a raw endpoint/query string; legacy payloads predate full
74
+ * route provenance and are restricted to their known protocol family.
75
+ */
76
+ export interface ReasoningArtifactProvenance {
77
+ readonly provider: ProviderId | "legacy";
78
+ readonly model?: string | undefined;
79
+ readonly endpointHash?: string | undefined;
80
+ readonly dialect: ReasoningArtifactDialect;
81
+ readonly legacy?: true | undefined;
82
+ }
83
+ /** Target route used at a serializer boundary for artifact compatibility. */
84
+ export interface ReasoningArtifactReplayTarget {
85
+ readonly provider: ProviderId;
86
+ readonly model: string;
87
+ readonly endpointHash?: string | undefined;
88
+ readonly dialect: ReasoningArtifactDialect;
89
+ }
90
+ /** Immutable raw provider state; text shown to users lives in `displaySummary`. */
91
+ export type ReasoningArtifactRaw = string | Readonly<Record<string, unknown>> | readonly unknown[];
92
+ /**
93
+ * Versioned reasoning state. Raw payloads are immutable replay data and must
94
+ * never be used as transcript/display text or operation telemetry.
95
+ */
96
+ export interface ReasoningArtifact {
97
+ readonly version: 1;
98
+ readonly kind: ReasoningArtifactKind;
99
+ readonly raw: ReasoningArtifactRaw;
100
+ readonly displaySummary?: string | undefined;
101
+ readonly provenance: ReasoningArtifactProvenance;
102
+ readonly replay: {
103
+ readonly scope: ReasoningArtifactReplayScope;
104
+ readonly persistence: ReasoningArtifactPersistence;
105
+ };
106
+ readonly position: ReasoningArtifactPosition;
107
+ readonly accounting: {
108
+ readonly byteLength: number;
109
+ readonly estimatedTokens: number;
110
+ };
111
+ }
112
+ /** Metadata-only serializer decision. It intentionally contains no raw state. */
113
+ export type ReasoningArtifactOmissionReason = "replay-disabled" | "not-a-tool-turn" | "provider-mismatch" | "model-mismatch" | "endpoint-mismatch" | "endpoint-unknown" | "dialect-mismatch";
114
+ export interface ReasoningArtifactReplayDecision {
115
+ readonly version: 1;
116
+ readonly action: "replayed" | "omitted";
117
+ readonly kind: ReasoningArtifactKind;
118
+ readonly reason?: ReasoningArtifactOmissionReason | undefined;
119
+ readonly source: ReasoningArtifactProvenance;
120
+ readonly target: ReasoningArtifactReplayTarget;
121
+ readonly byteLength: number;
122
+ }
123
+ export type ReasoningArtifactReplayObserver = (decision: ReasoningArtifactReplayDecision) => void;
56
124
  export interface ChatMessage {
57
125
  role: "system" | "user" | "assistant" | "tool";
58
126
  content: string;
@@ -79,6 +147,8 @@ export interface ChatMessage {
79
147
  * understand it ignore it.
80
148
  */
81
149
  reasoningBlock?: ReasoningBlock | undefined;
150
+ /** Canonical immutable artifact timeline; legacy `reasoningBlock` remains additive. */
151
+ reasoningArtifacts?: readonly ReasoningArtifact[] | undefined;
82
152
  /**
83
153
  * Model-only recovery / governor nudge. Kept in API history so the agent
84
154
  * continues correctly, but never rendered as a YOU bubble or WARN notice
@@ -110,9 +180,79 @@ export interface ToolDefinition {
110
180
  readOnly?: boolean | undefined;
111
181
  askMode?: boolean | undefined;
112
182
  }
183
+ export type GenerationAttemptMode = "complete" | "stream";
184
+ export type GenerationAttemptReason = "initial" | "retry" | "fallback" | "adaptation" | "provider-retry";
185
+ export type GenerationAttemptOutcome = "success" | "failure" | "cancelled";
186
+ export type RequestFingerprintSerializerId = "chat-completions" | "anthropic-messages" | "gemini-generate-content" | "meta-responses" | "ollama-chat";
187
+ export type RequestFingerprintSectionKind = "instructions" | "tools" | "history" | "settings";
188
+ export interface RequestFingerprintSection {
189
+ readonly section: RequestFingerprintSectionKind;
190
+ readonly byteLength: number;
191
+ readonly sha256: string;
192
+ readonly itemCount?: number | undefined;
193
+ }
194
+ export interface RequestFingerprintPrefix {
195
+ readonly ordinal: number;
196
+ readonly section: RequestFingerprintSectionKind | "wire";
197
+ readonly boundary: "field" | "history-item" | "wire";
198
+ readonly byteLength: number;
199
+ readonly sha256: string;
200
+ readonly historyItems?: number | undefined;
201
+ }
202
+ /** Metadata-only digest of a final request body; never contains wire values. */
203
+ export interface RequestFingerprintV1 {
204
+ readonly version: 1;
205
+ readonly serializer: {
206
+ readonly id: RequestFingerprintSerializerId;
207
+ readonly version: 1;
208
+ };
209
+ readonly body: {
210
+ readonly byteLength: number;
211
+ readonly sha256: string;
212
+ };
213
+ readonly sections: readonly RequestFingerprintSection[];
214
+ readonly prefixes: readonly RequestFingerprintPrefix[];
215
+ }
216
+ export interface GenerationAttemptInput {
217
+ readonly provider: ProviderId;
218
+ readonly model: string;
219
+ readonly mode: GenerationAttemptMode;
220
+ readonly reason: GenerationAttemptReason;
221
+ /** Final-wire metadata only; no body, header, URL, or request value is retained. */
222
+ readonly requestFingerprint?: RequestFingerprintV1 | undefined;
223
+ }
224
+ export interface GenerationAttemptHandle {
225
+ complete(outcome: GenerationAttemptOutcome, usage?: TokenUsage | undefined, statusCode?: number | undefined): void;
226
+ }
227
+ export interface GenerationAttemptUsageSink {
228
+ begin(input: GenerationAttemptInput): GenerationAttemptHandle;
229
+ }
230
+ /**
231
+ * Logical role of a request. Turn and compaction requests deliberately share a
232
+ * cache identity so a compaction prompt can reuse the turn's cached prefix;
233
+ * auxiliary requests (titles, classifications) are isolated so their unrelated
234
+ * short prefix can never evict it.
235
+ */
236
+ export type CompletionRequestPurpose = "turn" | "compaction" | "auxiliary";
237
+ export interface SuccessfulRequestSnapshot {
238
+ readonly provider: ProviderId;
239
+ readonly model: string;
240
+ readonly messages: readonly ChatMessage[];
241
+ readonly temperature?: number | undefined;
242
+ readonly thinking?: ReasoningPreference | undefined;
243
+ readonly tools?: readonly ToolDefinition[] | undefined;
244
+ readonly toolChoice?: ToolChoice | undefined;
245
+ readonly parallelToolCalls?: boolean | undefined;
246
+ }
113
247
  export interface CompletionRequest {
114
248
  provider?: ProviderId | undefined;
115
249
  model?: string | undefined;
250
+ /** Scopes provider cache-affinity keys; defaults to a turn request. */
251
+ purpose?: CompletionRequestPurpose | undefined;
252
+ /** Internal per-operation admission accounting; serializers must ignore it. */
253
+ attemptUsage?: GenerationAttemptUsageSink | undefined;
254
+ /** Internal reason for providers that issue nested physical admissions. */
255
+ attemptReason?: GenerationAttemptReason | undefined;
116
256
  /**
117
257
  * Permit the configured provider chain to use each fallback provider's
118
258
  * default model when the explicitly selected model cannot produce a usable
@@ -139,10 +279,19 @@ export interface CompletionRequest {
139
279
  parallelToolCalls?: boolean | undefined;
140
280
  /** Fired as native tool_call name/args stream in (early UI cards). */
141
281
  onToolCallDelta?: ((delta: ToolCallStreamDelta) => void) | undefined;
282
+ /** Metadata-only artifact replay decisions emitted during request serialization. */
283
+ onReasoningArtifactReplayDecision?: ReasoningArtifactReplayObserver | undefined;
284
+ onStreamEvent?: import("./llm/stream-events.js").ProviderStreamEventSink | undefined;
142
285
  }
143
286
  /** Provider-reported or estimated token counts for one completion. */
144
287
  export interface TokenUsage {
145
288
  readonly promptTokens: number;
289
+ /**
290
+ * Present only when another provider counter arrived without a prompt count.
291
+ * Absence preserves legacy callers: any supplied promptTokens value is known,
292
+ * including an explicit zero.
293
+ */
294
+ readonly promptTokensKnown?: false | undefined;
146
295
  readonly completionTokens: number;
147
296
  readonly totalTokens: number;
148
297
  /** true when values came from the provider API. */
@@ -151,6 +300,8 @@ export interface TokenUsage {
151
300
  readonly cachedPromptTokens?: number | undefined;
152
301
  /** Prompt tokens written into the provider cache, when reported. */
153
302
  readonly cacheCreationTokens?: number | undefined;
303
+ /** Prompt tokens explicitly not served from provider cache, when reported. */
304
+ readonly uncachedPromptTokens?: number | undefined;
154
305
  /** Reasoning tokens inside the completion, when reported. */
155
306
  readonly reasoningTokens?: number | undefined;
156
307
  }
@@ -164,8 +315,12 @@ export interface CompletionResult {
164
315
  rawAssistantMessage?: unknown | undefined;
165
316
  /** Exact usage when the provider reported it; omit when unknown. */
166
317
  usage?: TokenUsage | undefined;
318
+ /** Per-admission usage for the logical operation that produced this result. */
319
+ operationUsage?: import("./llm/operation-usage.js").OperationUsageSnapshot | undefined;
167
320
  /** Signed reasoning block to replay on the next request. */
168
321
  reasoningBlock?: ReasoningBlock | undefined;
322
+ /** Canonical immutable replay artifacts emitted by the provider. */
323
+ reasoningArtifacts?: readonly ReasoningArtifact[] | undefined;
169
324
  }
170
325
  export interface ProviderStatus {
171
326
  provider: ProviderId;
package/dist/types.js CHANGED
@@ -18,6 +18,7 @@ export const providerIds = [
18
18
  "meta",
19
19
  "fireworks",
20
20
  "hetzner",
21
+ "orcarouter",
21
22
  ];
22
23
  /** True for system-injected recovery prompts that must stay out of the chat UI. */
23
24
  export function isInternalChatMessage(message) {
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,MAAM;IACN,MAAM;IACN,QAAQ;IACR,YAAY;IACZ,QAAQ;IACR,WAAW;IACX,QAAQ;IACR,aAAa;IACb,QAAQ;IACR,YAAY;IACZ,QAAQ;IACR,QAAQ;IACR,YAAY;IACZ,OAAO;IACP,WAAW;IACX,aAAa;IACb,MAAM;IACN,WAAW;IACX,SAAS;CACD,CAAC;AAgGX,mFAAmF;AACnF,MAAM,UAAU,qBAAqB,CAAC,OAAoB;IACxD,IAAI,OAAO,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAClC,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,KAAK,CAAC;IAC1C,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACpC,6EAA6E;IAC7E,IAAI,+BAA+B,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5D,IAAI,yCAAyC,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACtE,0DAA0D;IAC1D,OAAO,ocAAoc,CAAC,IAAI,CAC9c,IAAI,CACL,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,MAAM;IACN,MAAM;IACN,QAAQ;IACR,YAAY;IACZ,QAAQ;IACR,WAAW;IACX,QAAQ;IACR,aAAa;IACb,QAAQ;IACR,YAAY;IACZ,QAAQ;IACR,QAAQ;IACR,YAAY;IACZ,OAAO;IACP,WAAW;IACX,aAAa;IACb,MAAM;IACN,WAAW;IACX,SAAS;IACT,YAAY;CACJ,CAAC;AAkNX,mFAAmF;AACnF,MAAM,UAAU,qBAAqB,CAAC,OAAoB;IACxD,IAAI,OAAO,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAClC,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,KAAK,CAAC;IAC1C,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACpC,6EAA6E;IAC7E,IAAI,+BAA+B,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5D,IAAI,yCAAyC,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACtE,0DAA0D;IAC1D,OAAO,ocAAoc,CAAC,IAAI,CAC9c,IAAI,CACL,CAAC;AACJ,CAAC"}
@@ -19,6 +19,7 @@ import type { ConfirmationPort } from "../../app/ports/confirm-port.js";
19
19
  import type { SecretPort } from "../../app/ports/secret-port.js";
20
20
  import type { InteractiveSessionsPort } from "../../app/ports/interactive-sessions-port.js";
21
21
  import { SessionController } from "../../app/controllers/session-controller.js";
22
+ import { CancelCoordinator } from "../../app/controllers/cancel-coordinator.js";
22
23
  import { type CommandRegistry } from "../../app/commands/registry.js";
23
24
  import { ActionRouter } from "../actions/action-router.js";
24
25
  import { FocusController } from "../controllers/focus-controller.js";
@@ -82,6 +83,7 @@ export interface AppServices {
82
83
  readonly overlay: OverlayController;
83
84
  /** Cancellable non-session operations (e.g. /update download + install). */
84
85
  readonly interruptible: InterruptibleController;
86
+ readonly cancel: CancelCoordinator;
85
87
  readonly pagerExport: PagerExportPort;
86
88
  readonly requestExit: () => void;
87
89
  readonly capabilities: TerminalCapabilityReport;
@@ -14,6 +14,7 @@ import { createCurrentInteractiveSessionsPort } from "../../app/adapters/current
14
14
  import { createCurrentUpdatesPort } from "../../app/adapters/current-updates-adapter.js";
15
15
  import { createSystemClipboardPort } from "../../app/adapters/in-memory-clipboard-adapter.js";
16
16
  import { SessionController } from "../../app/controllers/session-controller.js";
17
+ import { CancelCoordinator } from "../../app/controllers/cancel-coordinator.js";
17
18
  import { buildDefaultCommandRegistry, } from "../../app/commands/registry.js";
18
19
  import { ActionRouter } from "../actions/action-router.js";
19
20
  import { FocusController } from "../controllers/focus-controller.js";
@@ -57,13 +58,28 @@ export function createCompositionRoot(options = {}) {
57
58
  completionTokens: event.payload.completionTokens,
58
59
  totalTokens: event.payload.totalTokens,
59
60
  exact: event.payload.exact,
60
- }, event.payload.model, event.payload.provider);
61
+ ...(event.payload.promptTokensKnown === false
62
+ ? { promptTokensKnown: false }
63
+ : {}),
64
+ ...(event.payload.cachedPromptTokens !== undefined
65
+ ? { cachedPromptTokens: event.payload.cachedPromptTokens }
66
+ : {}),
67
+ ...(event.payload.cacheCreationTokens !== undefined
68
+ ? { cacheCreationTokens: event.payload.cacheCreationTokens }
69
+ : {}),
70
+ ...(event.payload.uncachedPromptTokens !== undefined
71
+ ? { uncachedPromptTokens: event.payload.uncachedPromptTokens }
72
+ : {}),
73
+ ...(event.payload.reasoningTokens !== undefined
74
+ ? { reasoningTokens: event.payload.reasoningTokens }
75
+ : {}),
76
+ }, event.payload.model, event.payload.provider, event.payload.attempt);
61
77
  }
62
78
  // Auto-compaction mutates history through onMessages. Its provider usage is
63
79
  // otherwise stale until the following model response, so immediately use
64
80
  // the same final assembled-request estimate shown on the compaction card.
65
81
  if (event.type === "compaction-completed" && sessionRef) {
66
- sessionRef.noteContextCompacted(event.payload.afterTokens);
82
+ sessionRef.noteContextCompacted(event.payload.afterTokens, event.payload.contextScope, event.payload.compactionId);
67
83
  }
68
84
  if (event.type === "context-estimate" && sessionRef) {
69
85
  sessionRef.noteContextEstimate(event.payload.estimatedTokens);
@@ -123,10 +139,16 @@ export function createCompositionRoot(options = {}) {
123
139
  const live = sessionRef;
124
140
  if (!live)
125
141
  return undefined;
126
- return serializeForHistory(transcript.getState(), (id) => live.spool.tail(id));
142
+ return transcript.mergePersistSnapshot(serializeForHistory(transcript.getState(), (id) => live.spool.tail(id)));
127
143
  },
128
144
  });
129
145
  sessionRef = session;
146
+ const cancel = new CancelCoordinator({
147
+ session,
148
+ sessionId: () => session.sessionId,
149
+ jobs: ports.jobs,
150
+ interruptible,
151
+ });
130
152
  const unsubscribePlanJobs = ports.jobs.subscribe((change) => {
131
153
  if (change.type !== "notification")
132
154
  return;
@@ -161,6 +183,7 @@ export function createCompositionRoot(options = {}) {
161
183
  plan,
162
184
  overlay,
163
185
  interruptible,
186
+ cancel,
164
187
  pagerExport,
165
188
  requestExit: options.requestExit ?? (() => { }),
166
189
  capabilities,
@@ -1 +1 @@
1
- {"version":3,"file":"composition-root.js","sourceRoot":"","sources":["../../../src/ui-core/bootstrap/composition-root.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"composition-root.js","sourceRoot":"","sources":["../../../src/ui-core/bootstrap/composition-root.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  */
5
5
  import { getProvider, providerAuth } from "../../llm/router.js";
6
6
  import { defaultModels, normalizeEndpointUrl } from "../../llm/provider.js";
7
- import { modelSupportsThinking } from "../../llm/capabilities.js";
7
+ import { effectiveThinkingEffort, modelReasoningEfforts, modelSupportsThinking, } from "../../llm/capabilities.js";
8
8
  import { assertProvider } from "../../llm/provider.js";
9
9
  import { assertSearchProvider } from "../../tools/web/providers/provider.js";
10
10
  import { searchProviders } from "../../tools/web/providers/provider.js";
@@ -27,7 +27,7 @@ const REASONING_DESCRIPTIONS = {
27
27
  medium: "balanced",
28
28
  high: "deep reasoning",
29
29
  xhigh: "maximum depth",
30
- max: "highest supported depth",
30
+ max: "highest supported depth (falls back if rejected)",
31
31
  };
32
32
  /**
33
33
  * Live provider model catalogue (matches classic TUI `/model`).
@@ -734,13 +734,17 @@ export function handleReasoning(services, invocation) {
734
734
  const provider = services.session.getState().provider ?? getConfig().defaultProvider;
735
735
  const model = services.session.getState().model ?? "";
736
736
  const supported = modelSupportsThinking(provider, model) ? "supported" : "model may ignore it";
737
+ const advertised = modelReasoningEfforts(provider, model);
738
+ const advertisedHint = advertised?.length
739
+ ? ` · model accepts: ${advertised.join(", ")}`
740
+ : "";
737
741
  const options = Object.entries(REASONING_DESCRIPTIONS).map(([value, description]) => ({
738
742
  value,
739
743
  label: value,
740
744
  description,
741
- active: value === (current.enabled ? current.effort : "off"),
745
+ active: value === (effectiveThinkingEffort(provider, model, current) ?? "off"),
742
746
  }));
743
- services.overlay.openPicker({ title: `Reasoning · ${supported}`, options }, (value) => {
747
+ services.overlay.openPicker({ title: `Reasoning · ${supported}${advertisedHint}`, options }, (value) => {
744
748
  applyReasoning(services, value);
745
749
  services.overlay.close();
746
750
  });
@@ -916,7 +920,9 @@ export async function handleHistory(services, invocation) {
916
920
  // survive only in messages after abort-before-save of the UI snapshot).
917
921
  const visual = boundSessionVisualInput(session.transcript, session.messages);
918
922
  const hydrated = hydrateSessionVisual(visual.transcript, visual.messages);
919
- services.transcript.hydrate(hydrated.state);
923
+ services.transcript.hydrate(hydrated.state, {
924
+ persistBase: session.transcript,
925
+ });
920
926
  if (visual.omittedItems > 0 || visual.omittedMessages > 0) {
921
927
  services.session.notice("info", `Loaded recent history view; ${Math.max(visual.omittedItems, visual.omittedMessages)} older item(s) remain available to the model on continue.`);
922
928
  }
@@ -1 +1 @@
1
- {"version":3,"file":"picker-commands.js","sourceRoot":"","sources":["../../../src/ui-core/commands/picker-commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"picker-commands.js","sourceRoot":"","sources":["../../../src/ui-core/commands/picker-commands.ts"],"names":[],"mappings":"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"}