@pentoshi/clai 4.0.3 → 4.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (314) hide show
  1. package/README.md +45 -9
  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/confirm-port.js +6 -3
  6. package/dist/agent/confirm-port.js.map +1 -1
  7. package/dist/agent/context-breakdown.js +2 -0
  8. package/dist/agent/context-breakdown.js.map +1 -1
  9. package/dist/agent/context-manager.d.ts +23 -9
  10. package/dist/agent/context-manager.js +72 -43
  11. package/dist/agent/context-manager.js.map +1 -1
  12. package/dist/agent/events.d.ts +3 -0
  13. package/dist/agent/loop-guard.d.ts +2 -0
  14. package/dist/agent/loop-guard.js +48 -3
  15. package/dist/agent/loop-guard.js.map +1 -1
  16. package/dist/agent/prompt-composer.js +6 -6
  17. package/dist/agent/prompt-composer.js.map +1 -1
  18. package/dist/agent/reliability-policy.d.ts +1 -0
  19. package/dist/agent/reliability-policy.js +6 -3
  20. package/dist/agent/reliability-policy.js.map +1 -1
  21. package/dist/agent/request-accounting.d.ts +97 -0
  22. package/dist/agent/request-accounting.js +207 -0
  23. package/dist/agent/request-accounting.js.map +1 -0
  24. package/dist/agent/request-budget.d.ts +2 -2
  25. package/dist/agent/request-budget.js +2 -4
  26. package/dist/agent/request-budget.js.map +1 -1
  27. package/dist/agent/runner.d.ts +8 -2
  28. package/dist/agent/runner.js +412 -181
  29. package/dist/agent/runner.js.map +1 -1
  30. package/dist/agent/session-title.d.ts +0 -26
  31. package/dist/agent/session-title.js +0 -80
  32. package/dist/agent/session-title.js.map +1 -1
  33. package/dist/agent/tool-history.d.ts +2 -2
  34. package/dist/agent/tool-history.js +19 -6
  35. package/dist/agent/tool-history.js.map +1 -1
  36. package/dist/agent/turn-outcome.d.ts +1 -1
  37. package/dist/agent/turn-outcome.js +2 -12
  38. package/dist/agent/turn-outcome.js.map +1 -1
  39. package/dist/app/adapters/agent-event-adapter.js +19 -0
  40. package/dist/app/adapters/agent-event-adapter.js.map +1 -1
  41. package/dist/app/adapters/current-agent-adapter.js +4 -0
  42. package/dist/app/adapters/current-agent-adapter.js.map +1 -1
  43. package/dist/app/commands/catalog.js +23 -16
  44. package/dist/app/commands/catalog.js.map +1 -1
  45. package/dist/app/controllers/cancel-coordinator.d.ts +51 -0
  46. package/dist/app/controllers/cancel-coordinator.js +48 -0
  47. package/dist/app/controllers/cancel-coordinator.js.map +1 -0
  48. package/dist/app/controllers/session-compact-helper.d.ts +19 -2
  49. package/dist/app/controllers/session-compact-helper.js +100 -127
  50. package/dist/app/controllers/session-compact-helper.js.map +1 -1
  51. package/dist/app/controllers/session-context-usage.d.ts +32 -15
  52. package/dist/app/controllers/session-context-usage.js +186 -51
  53. package/dist/app/controllers/session-context-usage.js.map +1 -1
  54. package/dist/app/controllers/session-controller.d.ts +22 -11
  55. package/dist/app/controllers/session-controller.js +137 -92
  56. package/dist/app/controllers/session-controller.js.map +1 -1
  57. package/dist/app/controllers/session-naming.d.ts +31 -0
  58. package/dist/app/controllers/session-naming.js +173 -0
  59. package/dist/app/controllers/session-naming.js.map +1 -0
  60. package/dist/app/controllers/session-persistence.d.ts +2 -2
  61. package/dist/app/controllers/session-persistence.js +3 -6
  62. package/dist/app/controllers/session-persistence.js.map +1 -1
  63. package/dist/app/controllers/session-turn-request.d.ts +2 -1
  64. package/dist/app/controllers/session-turn-request.js +3 -0
  65. package/dist/app/controllers/session-turn-request.js.map +1 -1
  66. package/dist/app/controllers/turn-continuation.d.ts +0 -6
  67. package/dist/app/controllers/turn-continuation.js +4 -21
  68. package/dist/app/controllers/turn-continuation.js.map +1 -1
  69. package/dist/app/controllers/turn-controller.d.ts +2 -1
  70. package/dist/app/controllers/turn-controller.js +1 -0
  71. package/dist/app/controllers/turn-controller.js.map +1 -1
  72. package/dist/app/events/app-event.d.ts +9 -0
  73. package/dist/app/events/app-event.js.map +1 -1
  74. package/dist/app/ports/agent-port.d.ts +8 -1
  75. package/dist/app/ports/transcript-item.d.ts +9 -1
  76. package/dist/classic/app/ClassicApp.js +3 -3
  77. package/dist/classic/app/ClassicApp.js.map +1 -1
  78. package/dist/classic/app/app-wiring.js +1 -2
  79. package/dist/classic/app/app-wiring.js.map +1 -1
  80. package/dist/classic/app/wiring-interactions.js +4 -9
  81. package/dist/classic/app/wiring-interactions.js.map +1 -1
  82. package/dist/classic/blocks/TurnSummaryBlock.d.ts +3 -0
  83. package/dist/classic/blocks/TurnSummaryBlock.js +6 -0
  84. package/dist/classic/blocks/TurnSummaryBlock.js.map +1 -0
  85. package/dist/classic/blocks/tool-lines.js +2 -1
  86. package/dist/classic/blocks/tool-lines.js.map +1 -1
  87. package/dist/classic/blocks/turn-summary-lines.d.ts +3 -0
  88. package/dist/classic/blocks/turn-summary-lines.js +7 -0
  89. package/dist/classic/blocks/turn-summary-lines.js.map +1 -0
  90. package/dist/classic/chrome/status-rows.d.ts +0 -1
  91. package/dist/classic/chrome/status-rows.js +0 -12
  92. package/dist/classic/chrome/status-rows.js.map +1 -1
  93. package/dist/classic/feed/Feed.js +2 -0
  94. package/dist/classic/feed/Feed.js.map +1 -1
  95. package/dist/classic/feed/feed-blocks.d.ts +1 -1
  96. package/dist/classic/feed/feed-blocks.js +3 -0
  97. package/dist/classic/feed/feed-blocks.js.map +1 -1
  98. package/dist/classic/input/cancel-ladder.d.ts +2 -19
  99. package/dist/classic/input/cancel-ladder.js +13 -20
  100. package/dist/classic/input/cancel-ladder.js.map +1 -1
  101. package/dist/commands/providers.js +2 -0
  102. package/dist/commands/providers.js.map +1 -1
  103. package/dist/llm/adapters/anthropic-tools.d.ts +31 -14
  104. package/dist/llm/adapters/anthropic-tools.js +124 -29
  105. package/dist/llm/adapters/anthropic-tools.js.map +1 -1
  106. package/dist/llm/adapters/gemini-tools.d.ts +16 -4
  107. package/dist/llm/adapters/gemini-tools.js +117 -16
  108. package/dist/llm/adapters/gemini-tools.js.map +1 -1
  109. package/dist/llm/adapters/openai-tools.d.ts +13 -2
  110. package/dist/llm/adapters/openai-tools.js +58 -11
  111. package/dist/llm/adapters/openai-tools.js.map +1 -1
  112. package/dist/llm/agentrouter.js +68 -45
  113. package/dist/llm/agentrouter.js.map +1 -1
  114. package/dist/llm/anthropic.js +69 -36
  115. package/dist/llm/anthropic.js.map +1 -1
  116. package/dist/llm/aws-mantle.js +70 -32
  117. package/dist/llm/aws-mantle.js.map +1 -1
  118. package/dist/llm/bynara.js +26 -69
  119. package/dist/llm/bynara.js.map +1 -1
  120. package/dist/llm/capabilities.d.ts +2 -1
  121. package/dist/llm/capabilities.js +56 -1
  122. package/dist/llm/capabilities.js.map +1 -1
  123. package/dist/llm/context-snapshot.d.ts +100 -0
  124. package/dist/llm/context-snapshot.js +277 -0
  125. package/dist/llm/context-snapshot.js.map +1 -0
  126. package/dist/llm/context-windows.d.ts +10 -0
  127. package/dist/llm/context-windows.js +129 -0
  128. package/dist/llm/context-windows.js.map +1 -0
  129. package/dist/llm/custom-provider-profile.d.ts +75 -0
  130. package/dist/llm/custom-provider-profile.js +558 -0
  131. package/dist/llm/custom-provider-profile.js.map +1 -0
  132. package/dist/llm/custom-providers.d.ts +13 -1
  133. package/dist/llm/custom-providers.js +77 -25
  134. package/dist/llm/custom-providers.js.map +1 -1
  135. package/dist/llm/effort-fallback.d.ts +44 -0
  136. package/dist/llm/effort-fallback.js +101 -0
  137. package/dist/llm/effort-fallback.js.map +1 -0
  138. package/dist/llm/fireworks.d.ts +3 -0
  139. package/dist/llm/fireworks.js +103 -0
  140. package/dist/llm/fireworks.js.map +1 -0
  141. package/dist/llm/free.js +4 -0
  142. package/dist/llm/free.js.map +1 -1
  143. package/dist/llm/gemini.d.ts +1 -1
  144. package/dist/llm/gemini.js +89 -51
  145. package/dist/llm/gemini.js.map +1 -1
  146. package/dist/llm/groq.js +4 -0
  147. package/dist/llm/groq.js.map +1 -1
  148. package/dist/llm/hetzner.d.ts +3 -0
  149. package/dist/llm/hetzner.js +98 -0
  150. package/dist/llm/hetzner.js.map +1 -0
  151. package/dist/llm/http.d.ts +60 -10
  152. package/dist/llm/http.js +465 -156
  153. package/dist/llm/http.js.map +1 -1
  154. package/dist/llm/kimchi.js +4 -0
  155. package/dist/llm/kimchi.js.map +1 -1
  156. package/dist/llm/lightning.js +4 -0
  157. package/dist/llm/lightning.js.map +1 -1
  158. package/dist/llm/meta.d.ts +2 -0
  159. package/dist/llm/meta.js +839 -624
  160. package/dist/llm/meta.js.map +1 -1
  161. package/dist/llm/modal.js +4 -0
  162. package/dist/llm/modal.js.map +1 -1
  163. package/dist/llm/model-families.d.ts +9 -0
  164. package/dist/llm/model-families.js +39 -0
  165. package/dist/llm/model-families.js.map +1 -0
  166. package/dist/llm/nvidia.js +4 -0
  167. package/dist/llm/nvidia.js.map +1 -1
  168. package/dist/llm/ollama.js +44 -40
  169. package/dist/llm/ollama.js.map +1 -1
  170. package/dist/llm/openai.js +4 -0
  171. package/dist/llm/openai.js.map +1 -1
  172. package/dist/llm/openrouter.js +4 -0
  173. package/dist/llm/openrouter.js.map +1 -1
  174. package/dist/llm/operation-ledger.d.ts +60 -0
  175. package/dist/llm/operation-ledger.js +136 -0
  176. package/dist/llm/operation-ledger.js.map +1 -0
  177. package/dist/llm/operation-usage.d.ts +32 -0
  178. package/dist/llm/operation-usage.js +172 -0
  179. package/dist/llm/operation-usage.js.map +1 -0
  180. package/dist/llm/orcarouter.d.ts +7 -0
  181. package/dist/llm/orcarouter.js +166 -0
  182. package/dist/llm/orcarouter.js.map +1 -0
  183. package/dist/llm/provider-profile-layers.d.ts +7 -0
  184. package/dist/llm/provider-profile-layers.js +961 -0
  185. package/dist/llm/provider-profile-layers.js.map +1 -0
  186. package/dist/llm/provider-profile.d.ts +181 -0
  187. package/dist/llm/provider-profile.js +329 -0
  188. package/dist/llm/provider-profile.js.map +1 -0
  189. package/dist/llm/provider-profiles.d.ts +13 -0
  190. package/dist/llm/provider-profiles.js +86 -0
  191. package/dist/llm/provider-profiles.js.map +1 -0
  192. package/dist/llm/provider.d.ts +2 -0
  193. package/dist/llm/provider.js +198 -21
  194. package/dist/llm/provider.js.map +1 -1
  195. package/dist/llm/qwen-cloud.js +4 -0
  196. package/dist/llm/qwen-cloud.js.map +1 -1
  197. package/dist/llm/reasoning-artifacts.d.ts +101 -0
  198. package/dist/llm/reasoning-artifacts.js +440 -0
  199. package/dist/llm/reasoning-artifacts.js.map +1 -0
  200. package/dist/llm/request-fingerprint.d.ts +10 -0
  201. package/dist/llm/request-fingerprint.js +313 -0
  202. package/dist/llm/request-fingerprint.js.map +1 -0
  203. package/dist/llm/request-plan.d.ts +119 -0
  204. package/dist/llm/request-plan.js +279 -0
  205. package/dist/llm/request-plan.js.map +1 -0
  206. package/dist/llm/router.d.ts +19 -1
  207. package/dist/llm/router.js +504 -102
  208. package/dist/llm/router.js.map +1 -1
  209. package/dist/llm/stream-events.d.ts +47 -0
  210. package/dist/llm/stream-events.js +55 -0
  211. package/dist/llm/stream-events.js.map +1 -0
  212. package/dist/llm/stream-terminal.d.ts +30 -0
  213. package/dist/llm/stream-terminal.js +51 -0
  214. package/dist/llm/stream-terminal.js.map +1 -0
  215. package/dist/llm/token-estimate-calibration.d.ts +23 -0
  216. package/dist/llm/token-estimate-calibration.js +140 -0
  217. package/dist/llm/token-estimate-calibration.js.map +1 -0
  218. package/dist/llm/token-usage.d.ts +35 -5
  219. package/dist/llm/token-usage.js +212 -162
  220. package/dist/llm/token-usage.js.map +1 -1
  221. package/dist/llm/tokenrouter.js +13 -6
  222. package/dist/llm/tokenrouter.js.map +1 -1
  223. package/dist/modes/ask.js +11 -5
  224. package/dist/modes/ask.js.map +1 -1
  225. package/dist/noninteractive/start-noninteractive.js +31 -2
  226. package/dist/noninteractive/start-noninteractive.js.map +1 -1
  227. package/dist/noninteractive/stream-blocks.js +15 -4
  228. package/dist/noninteractive/stream-blocks.js.map +1 -1
  229. package/dist/prompts/embedded.js +1 -1
  230. package/dist/prompts/embedded.js.map +1 -1
  231. package/dist/prompts/system.agent.md +6 -0
  232. package/dist/store/config.js +7 -1
  233. package/dist/store/config.js.map +1 -1
  234. package/dist/store/history.d.ts +2 -0
  235. package/dist/store/history.js +19 -10
  236. package/dist/store/history.js.map +1 -1
  237. package/dist/store/plan.js +20 -14
  238. package/dist/store/plan.js.map +1 -1
  239. package/dist/tools/elevated-shell.d.ts +1 -1
  240. package/dist/tools/elevated-shell.js +24 -72
  241. package/dist/tools/elevated-shell.js.map +1 -1
  242. package/dist/tools/fs.d.ts +5 -3
  243. package/dist/tools/fs.js +8 -5
  244. package/dist/tools/fs.js.map +1 -1
  245. package/dist/tools/nmap-runner.js +30 -36
  246. package/dist/tools/nmap-runner.js.map +1 -1
  247. package/dist/tools/sudo-session.d.ts +83 -0
  248. package/dist/tools/sudo-session.js +124 -0
  249. package/dist/tools/sudo-session.js.map +1 -0
  250. package/dist/tui-v2/app/App.js +9 -24
  251. package/dist/tui-v2/app/App.js.map +1 -1
  252. package/dist/tui-v2/components/plan/plan-view.js +5 -3
  253. package/dist/tui-v2/components/plan/plan-view.js.map +1 -1
  254. package/dist/tui-v2/components/status/context-limit-chip.js +2 -2
  255. package/dist/tui-v2/components/status/context-limit-chip.js.map +1 -1
  256. package/dist/tui-v2/components/status/status-line.js +1 -14
  257. package/dist/tui-v2/components/status/status-line.js.map +1 -1
  258. package/dist/tui-v2/components/transcript/intro-card.js +2 -1
  259. package/dist/tui-v2/components/transcript/intro-card.js.map +1 -1
  260. package/dist/tui-v2/components/transcript/notice-row.d.ts +3 -1
  261. package/dist/tui-v2/components/transcript/notice-row.js +28 -3
  262. package/dist/tui-v2/components/transcript/notice-row.js.map +1 -1
  263. package/dist/tui-v2/components/transcript/thinking-block.d.ts +0 -5
  264. package/dist/tui-v2/components/transcript/thinking-block.js +3 -8
  265. package/dist/tui-v2/components/transcript/thinking-block.js.map +1 -1
  266. package/dist/tui-v2/components/transcript/tool-card.js +16 -7
  267. package/dist/tui-v2/components/transcript/tool-card.js.map +1 -1
  268. package/dist/tui-v2/components/transcript/transcript-row.d.ts +0 -2
  269. package/dist/tui-v2/components/transcript/transcript-row.js +7 -3
  270. package/dist/tui-v2/components/transcript/transcript-row.js.map +1 -1
  271. package/dist/tui-v2/components/transcript/transcript-view.js +1 -3
  272. package/dist/tui-v2/components/transcript/transcript-view.js.map +1 -1
  273. package/dist/tui-v2/composer/composer-editor.js +2 -1
  274. package/dist/tui-v2/composer/composer-editor.js.map +1 -1
  275. package/dist/types.d.ts +156 -1
  276. package/dist/types.js +3 -0
  277. package/dist/types.js.map +1 -1
  278. package/dist/ui-core/bootstrap/composition-root.d.ts +2 -0
  279. package/dist/ui-core/bootstrap/composition-root.js +26 -3
  280. package/dist/ui-core/bootstrap/composition-root.js.map +1 -1
  281. package/dist/ui-core/commands/picker-commands.js +11 -5
  282. package/dist/ui-core/commands/picker-commands.js.map +1 -1
  283. package/dist/ui-core/commands/session-commands.js +41 -5
  284. package/dist/ui-core/commands/session-commands.js.map +1 -1
  285. package/dist/ui-core/plan/plan-lifecycle.js +3 -2
  286. package/dist/ui-core/plan/plan-lifecycle.js.map +1 -1
  287. package/dist/ui-core/rendering/context-limit.js +4 -1
  288. package/dist/ui-core/rendering/context-limit.js.map +1 -1
  289. package/dist/ui-core/rendering/duration.d.ts +5 -0
  290. package/dist/ui-core/rendering/duration.js +43 -0
  291. package/dist/ui-core/rendering/duration.js.map +1 -0
  292. package/dist/ui-core/rendering/intro-header.js +2 -2
  293. package/dist/ui-core/rendering/intro-header.js.map +1 -1
  294. package/dist/ui-core/rendering/theme.d.ts +1 -0
  295. package/dist/ui-core/rendering/theme.js +2 -0
  296. package/dist/ui-core/rendering/theme.js.map +1 -1
  297. package/dist/ui-core/rendering/transcript-semantic.js +2 -0
  298. package/dist/ui-core/rendering/transcript-semantic.js.map +1 -1
  299. package/dist/ui-core/state/transcript-compaction.js +2 -0
  300. package/dist/ui-core/state/transcript-compaction.js.map +1 -1
  301. package/dist/ui-core/state/transcript-hydrate.js +34 -4
  302. package/dist/ui-core/state/transcript-hydrate.js.map +1 -1
  303. package/dist/ui-core/state/transcript-reducer.d.ts +5 -0
  304. package/dist/ui-core/state/transcript-reducer.js +96 -8
  305. package/dist/ui-core/state/transcript-reducer.js.map +1 -1
  306. package/dist/ui-core/state/transcript-store.d.ts +10 -1
  307. package/dist/ui-core/state/transcript-store.js +22 -1
  308. package/dist/ui-core/state/transcript-store.js.map +1 -1
  309. package/dist/ui-core/state/transcript-types.d.ts +9 -1
  310. package/dist/ui-core/state/transcript-types.js +3 -1
  311. package/dist/ui-core/state/transcript-types.js.map +1 -1
  312. package/dist/version.generated.d.ts +2 -2
  313. package/dist/version.generated.js +2 -2
  314. package/package.json +6 -1
@@ -2,11 +2,27 @@ import { defaultModels, } from "./provider.js";
2
2
  import { ProviderError, createSseFrameAssembler, imageCapableMessages, readJson, readStreamLines, streamIdleBudgets, } from "./http.js";
3
3
  import { anthropicToolBodyFields, createAnthropicToolStreamState, finalizeAnthropicToolStream, handleAnthropicStreamEvent, parseAnthropicToolUseBlocks, toAnthropicToolMessages, } from "./adapters/anthropic-tools.js";
4
4
  import { mergeAnthropicStreamUsage, parseAnthropicUsage } from "./token-usage.js";
5
+ import { generationFetch } from "./operation-usage.js";
5
6
  import { firstSystemPrompt, requestContextSystemPrompts, withoutRequestContextSystemMessages, } from "./system-messages.js";
6
7
  import { resolveSampling } from "./sampling.js";
7
- import { REASONING_CLOSE, REASONING_OPEN, wrapReasoning, } from "./reasoning-marker.js";
8
+ import { emitStreamReasoningArtifacts, emitStreamReasoningDelta, } from "./stream-events.js";
9
+ import { ANTHROPIC_STREAM_TERMINAL, requireTerminalProof } from "./stream-terminal.js";
10
+ import { createReasoningArtifactProvenance, createSignedThinkingArtifacts, } from "./reasoning-artifacts.js";
11
+ import { compileRequestPlan } from "./request-plan.js";
8
12
  const baseUrl = "https://api.anthropic.com/v1";
9
13
  const anthropicVersion = "2023-06-01";
14
+ function anthropicReasoningArtifacts(model, blocks) {
15
+ const artifacts = createSignedThinkingArtifacts({
16
+ blocks,
17
+ provenance: createReasoningArtifactProvenance({
18
+ provider: "anthropic",
19
+ model,
20
+ dialect: "anthropic-messages",
21
+ endpoint: baseUrl,
22
+ }),
23
+ });
24
+ return artifacts.length ? artifacts : undefined;
25
+ }
10
26
  function anthropicThinkingBudget(reasoning) {
11
27
  if (!reasoning?.enabled)
12
28
  return undefined;
@@ -80,17 +96,33 @@ export function anthropicSystemBlocks(system, requestContexts = []) {
80
96
  }
81
97
  export function buildAnthropicBody(request, stream) {
82
98
  const model = request.model ?? defaultModels.anthropic;
99
+ const plan = compileRequestPlan({
100
+ provider: "anthropic",
101
+ model,
102
+ messages: request.messages,
103
+ stream,
104
+ endpoint: baseUrl,
105
+ reasoning: request.thinking,
106
+ tools: request.tools,
107
+ toolChoice: request.toolChoice,
108
+ temperature: request.temperature,
109
+ maxTokens: request.maxTokens,
110
+ });
83
111
  const requestContexts = requestContextSystemPrompts(request.messages);
84
112
  const system = anthropicSystemBlocks(firstSystemPrompt(request.messages), requestContexts);
85
- const messages = toAnthropicToolMessages(withoutRequestContextSystemMessages(imageCapableMessages("anthropic", model, request.messages)));
86
- const thinking = anthropicThinkingField(request.thinking, model);
113
+ const reasoningArtifactReplay = {
114
+ target: plan.replay.target,
115
+ observe: request.onReasoningArtifactReplayDecision,
116
+ };
117
+ const messages = toAnthropicToolMessages(withoutRequestContextSystemMessages(imageCapableMessages("anthropic", model, [...plan.timeline.messages])), reasoningArtifactReplay);
118
+ const thinking = anthropicThinkingField(plan.controls.reasoning, model);
87
119
  return JSON.stringify({
88
120
  model,
89
121
  system,
90
122
  messages,
91
123
  // A 1024 default sits below `anthropicThinkingBudget` (up to 8192), which
92
124
  // Anthropic rejects outright, and is far below every Claude output cap.
93
- max_tokens: anthropicMaxTokens(request.maxTokens, thinking),
125
+ max_tokens: anthropicMaxTokens(plan.controls.requestedMaxTokens, thinking),
94
126
  // Anthropic requires temperature to stay at its default (1) whenever
95
127
  // thinking is enabled — sending our 0.2 default returns HTTP 400
96
128
  // ("temperature may only be set to 1 when thinking is enabled").
@@ -103,15 +135,17 @@ export function buildAnthropicBody(request, stream) {
103
135
  temperature: resolveSampling({
104
136
  provider: "anthropic",
105
137
  model,
106
- reasoningEnabled: Boolean(request.thinking?.enabled),
107
- requestedTemperature: request.temperature,
138
+ reasoningEnabled: Boolean(plan.controls.reasoning?.enabled),
139
+ requestedTemperature: plan.controls.temperature,
108
140
  }).temperature,
109
141
  }),
110
142
  ...(stream ? { stream: true } : {}),
111
143
  ...(thinking ? { thinking } : {}),
112
144
  ...anthropicToolBodyFields({
113
- tools: request.tools,
114
- toolChoice: request.toolChoice,
145
+ tools: plan.tools.definitions.length
146
+ ? [...plan.tools.definitions]
147
+ : undefined,
148
+ toolChoice: plan.tools.choice,
115
149
  }),
116
150
  });
117
151
  }
@@ -136,7 +170,7 @@ export const anthropicProvider = {
136
170
  if (!auth.apiKey)
137
171
  throw new Error("Anthropic API key is required");
138
172
  const model = request.model ?? defaultModels.anthropic;
139
- const response = await fetch(`${baseUrl}/messages`, {
173
+ const response = await generationFetch(`${baseUrl}/messages`, {
140
174
  method: "POST",
141
175
  signal: request.signal ?? null,
142
176
  headers: {
@@ -154,16 +188,15 @@ export const anthropicProvider = {
154
188
  const reasoningBlock = parsed.thinkingSignature && parsed.thinkingText
155
189
  ? { text: parsed.thinkingText, signature: parsed.thinkingSignature }
156
190
  : undefined;
157
- const final = parsed.thinkingText
158
- ? `${wrapReasoning(parsed.thinkingText)}${parsed.text}`
159
- : parsed.text;
191
+ const reasoningArtifacts = anthropicReasoningArtifacts(model, parsed.thinkingBlocks);
160
192
  const usage = parseAnthropicUsage(data.usage);
161
193
  return {
162
- text: final,
194
+ text: parsed.text,
163
195
  provider: "anthropic",
164
196
  model,
165
197
  ...(parsed.toolCalls.length ? { toolCalls: parsed.toolCalls } : {}),
166
198
  ...(reasoningBlock ? { reasoningBlock } : {}),
199
+ ...(reasoningArtifacts ? { reasoningArtifacts } : {}),
167
200
  ...(data.stop_reason
168
201
  ? {
169
202
  finishReason: data.stop_reason === "tool_use" ? "tool_calls" : data.stop_reason,
@@ -178,7 +211,7 @@ export const anthropicProvider = {
178
211
  if (!auth.apiKey)
179
212
  throw new Error("Anthropic API key is required");
180
213
  const model = request.model ?? defaultModels.anthropic;
181
- const response = await fetch(`${baseUrl}/messages`, {
214
+ const response = await generationFetch(`${baseUrl}/messages`, {
182
215
  method: "POST",
183
216
  signal: request.signal ?? null,
184
217
  headers: {
@@ -195,24 +228,10 @@ export const anthropicProvider = {
195
228
  throw new Error("Anthropic returned no stream body");
196
229
  }
197
230
  let full = "";
198
- let inThinking = false;
199
231
  const streamState = createAnthropicToolStreamState();
200
232
  let stopReason;
233
+ let sawMessageStop = false;
201
234
  let streamUsage;
202
- const enterThinking = () => {
203
- if (inThinking)
204
- return;
205
- inThinking = true;
206
- full += REASONING_OPEN;
207
- onToken(REASONING_OPEN);
208
- };
209
- const exitThinking = () => {
210
- if (!inThinking)
211
- return;
212
- inThinking = false;
213
- full += REASONING_CLOSE;
214
- onToken(REASONING_CLOSE);
215
- };
216
235
  const sseFrames = createSseFrameAssembler();
217
236
  let outputProgress = 0;
218
237
  const toolArgumentBytes = new Map();
@@ -233,6 +252,8 @@ export const anthropicProvider = {
233
252
  if (parsed.type === "error") {
234
253
  throw new ProviderError(`Anthropic stream error: ${parsed.error?.message ?? parsed.error?.type ?? "unknown"}`, undefined, payload.slice(0, 500));
235
254
  }
255
+ if (parsed.type === "message_stop")
256
+ sawMessageStop = true;
236
257
  // message_start carries input tokens; message_delta carries output.
237
258
  if (parsed.type === "message_start" && parsed.message?.usage) {
238
259
  streamUsage = parseAnthropicUsage(parsed.message.usage) ?? streamUsage;
@@ -252,14 +273,10 @@ export const anthropicProvider = {
252
273
  parsed.type === "content_block_delta") {
253
274
  const deltas = handleAnthropicStreamEvent(streamState, parsed);
254
275
  if (deltas.thinkingDelta) {
255
- enterThinking();
256
- full += deltas.thinkingDelta;
257
276
  outputProgress += deltas.thinkingDelta.length;
258
- onToken(deltas.thinkingDelta);
277
+ emitStreamReasoningDelta(request.onStreamEvent, deltas.thinkingDelta);
259
278
  }
260
279
  if (deltas.textDelta) {
261
- if (inThinking)
262
- exitThinking();
263
280
  full += deltas.textDelta;
264
281
  outputProgress += deltas.textDelta.length;
265
282
  onToken(deltas.textDelta);
@@ -293,9 +310,24 @@ export const anthropicProvider = {
293
310
  throw frameError;
294
311
  }
295
312
  }
296
- exitThinking();
297
313
  const finalized = finalizeAnthropicToolStream(streamState);
298
- if (!full.trim() && finalized.toolCalls.length === 0) {
314
+ let anthropicToolArgumentBytes = 0;
315
+ for (const value of toolArgumentBytes.values()) {
316
+ anthropicToolArgumentBytes += value;
317
+ }
318
+ requireTerminalProof({
319
+ provider: "Anthropic",
320
+ policy: ANTHROPIC_STREAM_TERMINAL,
321
+ signal: sawMessageStop ? "message-stop" : undefined,
322
+ answerBytes: full.length,
323
+ reasoningBytes: finalized.thinkingText.length,
324
+ toolArgumentBytes: anthropicToolArgumentBytes,
325
+ });
326
+ const reasoningArtifacts = anthropicReasoningArtifacts(model, finalized.thinkingBlocks);
327
+ emitStreamReasoningArtifacts(request.onStreamEvent, reasoningArtifacts);
328
+ if (!full.trim() &&
329
+ !finalized.thinkingText &&
330
+ finalized.toolCalls.length === 0) {
299
331
  throw new Error("Anthropic returned no completion text");
300
332
  }
301
333
  return {
@@ -313,6 +345,7 @@ export const anthropicProvider = {
313
345
  },
314
346
  }
315
347
  : {}),
348
+ ...(reasoningArtifacts ? { reasoningArtifacts } : {}),
316
349
  ...(stopReason
317
350
  ? {
318
351
  finishReason: stopReason === "tool_use" ? "tool_calls" : stopReason,
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/llm/anthropic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/llm/anthropic.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,29 @@
1
1
  import { defaultModels, } from "./provider.js";
2
2
  import { openAiCompatibleComplete, openAiCompatibleStream, toCompletionResult, readJson, readStreamLines, ProviderError, createSseFrameAssembler, imageCapableMessages, ingestOpenAiModelCatalog, streamIdleBudgets, } from "./http.js";
3
+ import { generationFetch } from "./operation-usage.js";
3
4
  import { anthropicToolBodyFields, createAnthropicToolStreamState, finalizeAnthropicToolStream, handleAnthropicStreamEvent, parseAnthropicToolUseBlocks, toAnthropicToolMessages, } from "./adapters/anthropic-tools.js";
4
5
  import { firstSystemPrompt, requestContextSystemPrompts, withoutRequestContextSystemMessages, } from "./system-messages.js";
5
6
  import { anthropicMaxTokens } from "./anthropic.js";
6
- import { REASONING_CLOSE, REASONING_OPEN, wrapReasoning, } from "./reasoning-marker.js";
7
+ import { emitStreamReasoningArtifacts, emitStreamReasoningDelta, } from "./stream-events.js";
8
+ import { ANTHROPIC_STREAM_TERMINAL, requireTerminalProof } from "./stream-terminal.js";
7
9
  import { mergeAnthropicStreamUsage, parseAnthropicUsage, } from "./token-usage.js";
10
+ import { createReasoningArtifactProvenance, createReasoningArtifactReplayTarget, createSignedThinkingArtifacts, } from "./reasoning-artifacts.js";
8
11
  const baseUrl = "https://bedrock-mantle.ap-south-1.api.aws/anthropic/v1";
9
12
  const openAiBaseUrl = "https://bedrock-mantle.ap-south-1.api.aws/v1";
10
13
  const modelsBaseUrl = "https://bedrock-mantle.ap-south-1.api.aws";
11
14
  const anthropicVersion = "2023-06-01";
15
+ function mantleAnthropicReasoningArtifacts(model, blocks) {
16
+ const artifacts = createSignedThinkingArtifacts({
17
+ blocks,
18
+ provenance: createReasoningArtifactProvenance({
19
+ provider: "aws-mantle",
20
+ model,
21
+ dialect: "anthropic-messages",
22
+ endpoint: baseUrl,
23
+ }),
24
+ });
25
+ return artifacts.length ? artifacts : undefined;
26
+ }
12
27
  function getWorkspaceId() {
13
28
  return process.env.ANTHROPIC_WORKSPACE_ID ?? "default";
14
29
  }
@@ -44,6 +59,7 @@ function isAnthropicMantleModel(model) {
44
59
  }
45
60
  export const mantleProvider = {
46
61
  id: "aws-mantle",
62
+ reasoningStyle: "nvidia",
47
63
  displayName: "AWS Mantle",
48
64
  defaultModel: defaultModels["aws-mantle"],
49
65
  envVar: "ANTHROPIC_API_KEY",
@@ -91,6 +107,7 @@ export const mantleProvider = {
91
107
  tools: request.tools,
92
108
  toolChoice: request.toolChoice,
93
109
  parallelToolCalls: request.parallelToolCalls,
110
+ reasoningArtifactReplayObserver: request.onReasoningArtifactReplayDecision,
94
111
  });
95
112
  return toCompletionResult("aws-mantle", model, payload);
96
113
  }
@@ -100,9 +117,18 @@ export const mantleProvider = {
100
117
  ]
101
118
  .filter((value) => Boolean(value))
102
119
  .join("\n\n");
103
- const messages = toAnthropicToolMessages(withoutRequestContextSystemMessages(imageCapableMessages("aws-mantle", model, request.messages)));
120
+ const reasoningArtifactReplay = {
121
+ target: createReasoningArtifactReplayTarget({
122
+ provider: "aws-mantle",
123
+ model,
124
+ dialect: "anthropic-messages",
125
+ endpoint: baseUrl,
126
+ }),
127
+ observe: request.onReasoningArtifactReplayDecision,
128
+ };
129
+ const messages = toAnthropicToolMessages(withoutRequestContextSystemMessages(imageCapableMessages("aws-mantle", model, request.messages)), reasoningArtifactReplay);
104
130
  const thinking = anthropicThinkingField(request.thinking, model);
105
- const response = await fetch(`${baseUrl}/messages`, {
131
+ const response = await generationFetch(`${baseUrl}/messages`, {
106
132
  method: "POST",
107
133
  signal: request.signal ?? null,
108
134
  headers: {
@@ -134,16 +160,15 @@ export const mantleProvider = {
134
160
  const reasoningBlock = parsed.thinkingSignature && parsed.thinkingText
135
161
  ? { text: parsed.thinkingText, signature: parsed.thinkingSignature }
136
162
  : undefined;
137
- const final = parsed.thinkingText
138
- ? `${wrapReasoning(parsed.thinkingText)}${parsed.text}`
139
- : parsed.text;
163
+ const reasoningArtifacts = mantleAnthropicReasoningArtifacts(model, parsed.thinkingBlocks);
140
164
  return {
141
- text: final,
165
+ text: parsed.text,
142
166
  provider: "aws-mantle",
143
167
  model,
144
168
  ...(usage ? { usage } : {}),
145
169
  ...(parsed.toolCalls.length ? { toolCalls: parsed.toolCalls } : {}),
146
170
  ...(reasoningBlock ? { reasoningBlock } : {}),
171
+ ...(reasoningArtifacts ? { reasoningArtifacts } : {}),
147
172
  ...(data.stop_reason
148
173
  ? {
149
174
  finishReason: data.stop_reason === "tool_use" ? "tool_calls" : data.stop_reason,
@@ -170,11 +195,13 @@ export const mantleProvider = {
170
195
  signal: request.signal,
171
196
  onToken,
172
197
  onToolCallDelta: request.onToolCallDelta,
198
+ onStreamEvent: request.onStreamEvent,
173
199
  reasoning: request.thinking,
174
200
  reasoningStyle: "nvidia",
175
201
  tools: request.tools,
176
202
  toolChoice: request.toolChoice,
177
203
  parallelToolCalls: request.parallelToolCalls,
204
+ reasoningArtifactReplayObserver: request.onReasoningArtifactReplayDecision,
178
205
  });
179
206
  return toCompletionResult("aws-mantle", model, payload);
180
207
  }
@@ -184,9 +211,18 @@ export const mantleProvider = {
184
211
  ]
185
212
  .filter((value) => Boolean(value))
186
213
  .join("\n\n");
187
- const messages = toAnthropicToolMessages(withoutRequestContextSystemMessages(imageCapableMessages("aws-mantle", model, request.messages)));
214
+ const reasoningArtifactReplay = {
215
+ target: createReasoningArtifactReplayTarget({
216
+ provider: "aws-mantle",
217
+ model,
218
+ dialect: "anthropic-messages",
219
+ endpoint: baseUrl,
220
+ }),
221
+ observe: request.onReasoningArtifactReplayDecision,
222
+ };
223
+ const messages = toAnthropicToolMessages(withoutRequestContextSystemMessages(imageCapableMessages("aws-mantle", model, request.messages)), reasoningArtifactReplay);
188
224
  const thinking = anthropicThinkingField(request.thinking, model);
189
- const response = await fetch(`${baseUrl}/messages`, {
225
+ const response = await generationFetch(`${baseUrl}/messages`, {
190
226
  method: "POST",
191
227
  signal: request.signal ?? null,
192
228
  headers: {
@@ -216,31 +252,18 @@ export const mantleProvider = {
216
252
  throw new Error("Mantle returned no stream body");
217
253
  }
218
254
  let full = "";
219
- let inThinking = false;
220
255
  const streamState = createAnthropicToolStreamState();
221
256
  let stopReason;
257
+ let sawMessageStop = false;
222
258
  let streamUsage;
223
- const enterThinking = () => {
224
- if (inThinking)
225
- return;
226
- inThinking = true;
227
- full += REASONING_OPEN;
228
- onToken(REASONING_OPEN);
229
- };
230
- const exitThinking = () => {
231
- if (!inThinking)
232
- return;
233
- inThinking = false;
234
- full += REASONING_CLOSE;
235
- onToken(REASONING_CLOSE);
236
- };
237
259
  const sseFrames = createSseFrameAssembler();
238
260
  let outputProgress = 0;
261
+ let thinkingChars = 0;
239
262
  const toolArgumentBytes = new Map();
240
263
  for await (const line of readStreamLines(response, {
241
264
  signal: request.signal,
242
265
  ...streamIdleBudgets(Boolean(request.thinking?.enabled)),
243
- outputProgress: () => outputProgress + full.length,
266
+ outputProgress: () => outputProgress + full.length + thinkingChars,
244
267
  })) {
245
268
  const payload = sseFrames.pushLine(line);
246
269
  if (payload === undefined)
@@ -253,6 +276,8 @@ export const mantleProvider = {
253
276
  if (parsed.type === "error") {
254
277
  throw new ProviderError(`AWS Mantle stream error: ${parsed.error?.message ?? parsed.error?.type ?? "unknown"}`, undefined, payload.slice(0, 500));
255
278
  }
279
+ if (parsed.type === "message_stop")
280
+ sawMessageStop = true;
256
281
  if (parsed.type === "message_start" && parsed.message?.usage) {
257
282
  streamUsage = parseAnthropicUsage(parsed.message.usage) ?? streamUsage;
258
283
  }
@@ -271,13 +296,10 @@ export const mantleProvider = {
271
296
  parsed.type === "content_block_delta") {
272
297
  const deltas = handleAnthropicStreamEvent(streamState, parsed);
273
298
  if (deltas.thinkingDelta) {
274
- enterThinking();
275
- full += deltas.thinkingDelta;
276
- onToken(deltas.thinkingDelta);
299
+ thinkingChars += deltas.thinkingDelta.length;
300
+ emitStreamReasoningDelta(request.onStreamEvent, deltas.thinkingDelta);
277
301
  }
278
302
  if (deltas.textDelta) {
279
- if (inThinking)
280
- exitThinking();
281
303
  full += deltas.textDelta;
282
304
  onToken(deltas.textDelta);
283
305
  }
@@ -309,9 +331,24 @@ export const mantleProvider = {
309
331
  throw frameError;
310
332
  }
311
333
  }
312
- exitThinking();
313
334
  const finalized = finalizeAnthropicToolStream(streamState);
314
- if (!full.trim() && finalized.toolCalls.length === 0) {
335
+ let mantleToolArgumentBytes = 0;
336
+ for (const value of toolArgumentBytes.values()) {
337
+ mantleToolArgumentBytes += value;
338
+ }
339
+ requireTerminalProof({
340
+ provider: "AWS Mantle",
341
+ policy: ANTHROPIC_STREAM_TERMINAL,
342
+ signal: sawMessageStop ? "message-stop" : undefined,
343
+ answerBytes: full.length,
344
+ reasoningBytes: finalized.thinkingText.length,
345
+ toolArgumentBytes: mantleToolArgumentBytes,
346
+ });
347
+ const reasoningArtifacts = mantleAnthropicReasoningArtifacts(model, finalized.thinkingBlocks);
348
+ emitStreamReasoningArtifacts(request.onStreamEvent, reasoningArtifacts);
349
+ if (!full.trim() &&
350
+ !finalized.thinkingText &&
351
+ finalized.toolCalls.length === 0) {
315
352
  throw new Error("Mantle returned no completion text");
316
353
  }
317
354
  return {
@@ -328,6 +365,7 @@ export const mantleProvider = {
328
365
  },
329
366
  }
330
367
  : {}),
368
+ ...(reasoningArtifacts ? { reasoningArtifacts } : {}),
331
369
  ...(stopReason
332
370
  ? {
333
371
  finishReason: stopReason === "tool_use" ? "tool_calls" : stopReason,
@@ -1 +1 @@
1
- {"version":3,"file":"aws-mantle.js","sourceRoot":"","sources":["../../src/llm/aws-mantle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aws-mantle.js","sourceRoot":"","sources":["../../src/llm/aws-mantle.ts"],"names":[],"mappings":"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"}