@pentoshi/clai 4.11.25 → 4.11.27

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 (307) hide show
  1. package/README.md +91 -34
  2. package/dist/agent/compaction/summary-execution.js +11 -1
  3. package/dist/agent/compaction/summary-execution.js.map +1 -1
  4. package/dist/agent/context-manager.d.ts +0 -1
  5. package/dist/agent/context-manager.js +0 -1
  6. package/dist/agent/context-manager.js.map +1 -1
  7. package/dist/agent/events.d.ts +1 -5
  8. package/dist/agent/plan/actions/plan-clear.js +1 -1
  9. package/dist/agent/plan/actions/plan-clear.js.map +1 -1
  10. package/dist/agent/plan/actions/plan-create.js +38 -17
  11. package/dist/agent/plan/actions/plan-create.js.map +1 -1
  12. package/dist/agent/plan/actions/task-add.js +15 -4
  13. package/dist/agent/plan/actions/task-add.js.map +1 -1
  14. package/dist/agent/plan/actions/task-move.js +16 -5
  15. package/dist/agent/plan/actions/task-move.js.map +1 -1
  16. package/dist/agent/plan/handle-plan-tool.js +20 -6
  17. package/dist/agent/plan/handle-plan-tool.js.map +1 -1
  18. package/dist/agent/reliability-policy.d.ts +0 -10
  19. package/dist/agent/reliability-policy.js +0 -23
  20. package/dist/agent/reliability-policy.js.map +1 -1
  21. package/dist/agent/request-accounting.js +10 -10
  22. package/dist/agent/request-accounting.js.map +1 -1
  23. package/dist/agent/request-budget.d.ts +11 -18
  24. package/dist/agent/request-budget.js +14 -53
  25. package/dist/agent/request-budget.js.map +1 -1
  26. package/dist/agent/runner.js +16 -12
  27. package/dist/agent/runner.js.map +1 -1
  28. package/dist/agent/stream-recovery.d.ts +1 -2
  29. package/dist/agent/stream-recovery.js +5 -10
  30. package/dist/agent/stream-recovery.js.map +1 -1
  31. package/dist/agent/subagents/worker.js +3 -2
  32. package/dist/agent/subagents/worker.js.map +1 -1
  33. package/dist/agent/turn/automatic-compaction-execution.js +2 -2
  34. package/dist/agent/turn/automatic-compaction-execution.js.map +1 -1
  35. package/dist/agent/turn/compaction-admission.d.ts +2 -2
  36. package/dist/agent/turn/compaction-admission.js +14 -17
  37. package/dist/agent/turn/compaction-admission.js.map +1 -1
  38. package/dist/agent/turn/compaction-coordinator.d.ts +2 -1
  39. package/dist/agent/turn/compaction-coordinator.js +12 -7
  40. package/dist/agent/turn/compaction-coordinator.js.map +1 -1
  41. package/dist/agent/turn/compaction-durable-envelope.js +1 -1
  42. package/dist/agent/turn/compaction-durable-envelope.js.map +1 -1
  43. package/dist/agent/turn/compaction-replay-selection.js +2 -3
  44. package/dist/agent/turn/compaction-replay-selection.js.map +1 -1
  45. package/dist/agent/turn/compaction-summarizer.js +1 -1
  46. package/dist/agent/turn/compaction-summarizer.js.map +1 -1
  47. package/dist/agent/turn/loop/answer-path.js +2 -2
  48. package/dist/agent/turn/loop/answer-path.js.map +1 -1
  49. package/dist/agent/turn/loop/completion-interpretation.d.ts +0 -1
  50. package/dist/agent/turn/loop/completion-interpretation.js +2 -7
  51. package/dist/agent/turn/loop/completion-interpretation.js.map +1 -1
  52. package/dist/agent/turn/loop/deps.d.ts +1 -0
  53. package/dist/agent/turn/loop/empty-response.d.ts +1 -1
  54. package/dist/agent/turn/loop/empty-response.js +2 -4
  55. package/dist/agent/turn/loop/empty-response.js.map +1 -1
  56. package/dist/agent/turn/loop/output-budget.d.ts +0 -1
  57. package/dist/agent/turn/loop/output-budget.js +4 -9
  58. package/dist/agent/turn/loop/output-budget.js.map +1 -1
  59. package/dist/agent/turn/loop/request-assembly.d.ts +1 -3
  60. package/dist/agent/turn/loop/request-assembly.js +15 -15
  61. package/dist/agent/turn/loop/request-assembly.js.map +1 -1
  62. package/dist/agent/turn/loop/round-request.js +1 -6
  63. package/dist/agent/turn/loop/round-request.js.map +1 -1
  64. package/dist/agent/turn/loop/run-rounds.js +9 -15
  65. package/dist/agent/turn/loop/run-rounds.js.map +1 -1
  66. package/dist/agent/turn/loop/state.d.ts +2 -3
  67. package/dist/agent/turn/loop/state.js +1 -2
  68. package/dist/agent/turn/loop/state.js.map +1 -1
  69. package/dist/agent/turn/loop/stream-failure.d.ts +0 -1
  70. package/dist/agent/turn/loop/stream-failure.js +5 -5
  71. package/dist/agent/turn/loop/stream-failure.js.map +1 -1
  72. package/dist/agent/turn/loop/stream-request.d.ts +0 -1
  73. package/dist/agent/turn/loop/stream-request.js +1 -3
  74. package/dist/agent/turn/loop/stream-request.js.map +1 -1
  75. package/dist/agent/turn/plan-persistence.d.ts +4 -5
  76. package/dist/agent/turn/plan-persistence.js +13 -4
  77. package/dist/agent/turn/plan-persistence.js.map +1 -1
  78. package/dist/agent/turn/provider-measurement.d.ts +6 -0
  79. package/dist/agent/turn/provider-measurement.js +19 -0
  80. package/dist/agent/turn/provider-measurement.js.map +1 -0
  81. package/dist/agent/turn/responder-job-linkage.js +2 -2
  82. package/dist/agent/turn/responder-job-linkage.js.map +1 -1
  83. package/dist/agent/turn/setup/compaction-services.d.ts +2 -1
  84. package/dist/agent/turn/setup/compaction-services.js +2 -1
  85. package/dist/agent/turn/setup/compaction-services.js.map +1 -1
  86. package/dist/agent/turn/setup/task-gate-setup.d.ts +3 -3
  87. package/dist/agent/turn/setup/task-gate-setup.js.map +1 -1
  88. package/dist/agent/turn/task-autostart.d.ts +2 -2
  89. package/dist/agent/turn/task-autostart.js +7 -9
  90. package/dist/agent/turn/task-autostart.js.map +1 -1
  91. package/dist/agent/turn/task-credit.d.ts +2 -2
  92. package/dist/agent/turn/task-credit.js +8 -5
  93. package/dist/agent/turn/task-credit.js.map +1 -1
  94. package/dist/agent/turn/tool-execution/deps.d.ts +3 -3
  95. package/dist/agent/turn/tool-execution/dispatch.js +3 -5
  96. package/dist/agent/turn/tool-execution/dispatch.js.map +1 -1
  97. package/dist/agent/turn/tool-execution/meta-tools.d.ts +1 -1
  98. package/dist/agent/turn/tool-execution/meta-tools.js +13 -11
  99. package/dist/agent/turn/tool-execution/meta-tools.js.map +1 -1
  100. package/dist/agent/turn/tool-execution/plan-tool-ledger.d.ts +2 -2
  101. package/dist/agent/turn/tool-execution/plan-tool-ledger.js +6 -6
  102. package/dist/agent/turn/tool-execution/plan-tool-ledger.js.map +1 -1
  103. package/dist/agent/turn/tool-execution/result-framing.d.ts +1 -1
  104. package/dist/agent/turn/tool-execution/result-framing.js +1 -2
  105. package/dist/agent/turn/tool-execution/result-framing.js.map +1 -1
  106. package/dist/agent/turn/tool-execution/single-tool.js +28 -16
  107. package/dist/agent/turn/tool-execution/single-tool.js.map +1 -1
  108. package/dist/app/adapters/agent-event-adapter.js +8 -7
  109. package/dist/app/adapters/agent-event-adapter.js.map +1 -1
  110. package/dist/app/commands/catalog.js +1 -1
  111. package/dist/app/commands/catalog.js.map +1 -1
  112. package/dist/app/controllers/plan-controller.js +4 -1
  113. package/dist/app/controllers/plan-controller.js.map +1 -1
  114. package/dist/app/controllers/session-compact-helper.js +11 -8
  115. package/dist/app/controllers/session-compact-helper.js.map +1 -1
  116. package/dist/app/controllers/session-context-usage.d.ts +6 -4
  117. package/dist/app/controllers/session-context-usage.js +94 -33
  118. package/dist/app/controllers/session-context-usage.js.map +1 -1
  119. package/dist/app/controllers/session-controller.d.ts +6 -6
  120. package/dist/app/controllers/session-controller.js +51 -40
  121. package/dist/app/controllers/session-controller.js.map +1 -1
  122. package/dist/app/controllers/session-responder.d.ts +2 -0
  123. package/dist/app/controllers/session-responder.js +18 -0
  124. package/dist/app/controllers/session-responder.js.map +1 -1
  125. package/dist/app/controllers/session-usage-ledger.d.ts +7 -1
  126. package/dist/app/controllers/session-usage-ledger.js +76 -2
  127. package/dist/app/controllers/session-usage-ledger.js.map +1 -1
  128. package/dist/app/events/app-event.d.ts +5 -6
  129. package/dist/app/events/app-event.js.map +1 -1
  130. package/dist/classic/panels/pager-panel.js +3 -2
  131. package/dist/classic/panels/pager-panel.js.map +1 -1
  132. package/dist/commands/providers.d.ts +2 -0
  133. package/dist/commands/providers.js +49 -7
  134. package/dist/commands/providers.js.map +1 -1
  135. package/dist/llm/anthropic.d.ts +1 -0
  136. package/dist/llm/anthropic.js +20 -21
  137. package/dist/llm/anthropic.js.map +1 -1
  138. package/dist/llm/capabilities.d.ts +1 -4
  139. package/dist/llm/capabilities.js +24 -19
  140. package/dist/llm/capabilities.js.map +1 -1
  141. package/dist/llm/capability/state.js +0 -17
  142. package/dist/llm/capability/state.js.map +1 -1
  143. package/dist/llm/catalog-facts.js +40 -11
  144. package/dist/llm/catalog-facts.js.map +1 -1
  145. package/dist/llm/catalog-prefetch.js +9 -6
  146. package/dist/llm/catalog-prefetch.js.map +1 -1
  147. package/dist/llm/context-snapshot.d.ts +7 -3
  148. package/dist/llm/context-snapshot.js +35 -14
  149. package/dist/llm/context-snapshot.js.map +1 -1
  150. package/dist/llm/context-windows.d.ts +16 -0
  151. package/dist/llm/context-windows.js +54 -19
  152. package/dist/llm/context-windows.js.map +1 -1
  153. package/dist/llm/custom-providers.js +5 -4
  154. package/dist/llm/custom-providers.js.map +1 -1
  155. package/dist/llm/explabs.js +35 -26
  156. package/dist/llm/explabs.js.map +1 -1
  157. package/dist/llm/free.d.ts +1 -1
  158. package/dist/llm/free.js +26 -18
  159. package/dist/llm/free.js.map +1 -1
  160. package/dist/llm/gemini.js +25 -12
  161. package/dist/llm/gemini.js.map +1 -1
  162. package/dist/llm/kiro-auth.d.ts +65 -2
  163. package/dist/llm/kiro-auth.js +463 -130
  164. package/dist/llm/kiro-auth.js.map +1 -1
  165. package/dist/llm/kiro-import-sources.d.ts +10 -0
  166. package/dist/llm/kiro-import-sources.js +117 -0
  167. package/dist/llm/kiro-import-sources.js.map +1 -0
  168. package/dist/llm/kiro-reasoning.d.ts +28 -0
  169. package/dist/llm/kiro-reasoning.js +150 -0
  170. package/dist/llm/kiro-reasoning.js.map +1 -0
  171. package/dist/llm/kiro-social-device.d.ts +21 -0
  172. package/dist/llm/kiro-social-device.js +101 -0
  173. package/dist/llm/kiro-social-device.js.map +1 -0
  174. package/dist/llm/kiro.d.ts +7 -1
  175. package/dist/llm/kiro.js +757 -228
  176. package/dist/llm/kiro.js.map +1 -1
  177. package/dist/llm/learned-capabilities.js +1 -3
  178. package/dist/llm/learned-capabilities.js.map +1 -1
  179. package/dist/llm/merge-gateway.js +18 -13
  180. package/dist/llm/merge-gateway.js.map +1 -1
  181. package/dist/llm/model-layers/model-rules.js +22 -1
  182. package/dist/llm/model-layers/model-rules.js.map +1 -1
  183. package/dist/llm/model-limit-store.d.ts +15 -0
  184. package/dist/llm/model-limit-store.js +121 -0
  185. package/dist/llm/model-limit-store.js.map +1 -0
  186. package/dist/llm/nvidia.d.ts +1 -0
  187. package/dist/llm/nvidia.js +15 -17
  188. package/dist/llm/nvidia.js.map +1 -1
  189. package/dist/llm/ollama-model-limits.d.ts +4 -0
  190. package/dist/llm/ollama-model-limits.js +91 -0
  191. package/dist/llm/ollama-model-limits.js.map +1 -0
  192. package/dist/llm/ollama.js +2 -1
  193. package/dist/llm/ollama.js.map +1 -1
  194. package/dist/llm/orcarouter.d.ts +1 -0
  195. package/dist/llm/orcarouter.js +8 -1
  196. package/dist/llm/orcarouter.js.map +1 -1
  197. package/dist/llm/provider-balance.d.ts +31 -0
  198. package/dist/llm/provider-balance.js +118 -0
  199. package/dist/llm/provider-balance.js.map +1 -0
  200. package/dist/llm/provider-context-usage.d.ts +9 -0
  201. package/dist/llm/provider-context-usage.js +39 -0
  202. package/dist/llm/provider-context-usage.js.map +1 -0
  203. package/dist/llm/provider-info-text.js +19 -7
  204. package/dist/llm/provider-info-text.js.map +1 -1
  205. package/dist/llm/provider-profile-layers.js +1 -1
  206. package/dist/llm/provider-profile-layers.js.map +1 -1
  207. package/dist/llm/provider.d.ts +1 -0
  208. package/dist/llm/provider.js.map +1 -1
  209. package/dist/llm/qwen-cloud.d.ts +1 -0
  210. package/dist/llm/qwen-cloud.js +44 -9
  211. package/dist/llm/qwen-cloud.js.map +1 -1
  212. package/dist/llm/reasoning-errors.d.ts +2 -0
  213. package/dist/llm/reasoning-errors.js +16 -1
  214. package/dist/llm/reasoning-errors.js.map +1 -1
  215. package/dist/llm/routing/attempt-complete.js +9 -2
  216. package/dist/llm/routing/attempt-complete.js.map +1 -1
  217. package/dist/llm/routing/attempt-request.d.ts +1 -0
  218. package/dist/llm/routing/attempt-request.js +23 -0
  219. package/dist/llm/routing/attempt-request.js.map +1 -1
  220. package/dist/llm/routing/attempt-stream.js +15 -2
  221. package/dist/llm/routing/attempt-stream.js.map +1 -1
  222. package/dist/llm/token-estimate-calibration.js +1 -2
  223. package/dist/llm/token-estimate-calibration.js.map +1 -1
  224. package/dist/llm/token-usage.d.ts +2 -0
  225. package/dist/llm/token-usage.js +1 -1
  226. package/dist/llm/token-usage.js.map +1 -1
  227. package/dist/llm/wire/anthropic-model-catalog.d.ts +1 -0
  228. package/dist/llm/wire/anthropic-model-catalog.js +30 -0
  229. package/dist/llm/wire/anthropic-model-catalog.js.map +1 -0
  230. package/dist/llm/wire/dashscope-model-catalog.d.ts +1 -0
  231. package/dist/llm/wire/dashscope-model-catalog.js +53 -0
  232. package/dist/llm/wire/dashscope-model-catalog.js.map +1 -0
  233. package/dist/llm/wire/orcarouter-model-catalog.d.ts +2 -0
  234. package/dist/llm/wire/orcarouter-model-catalog.js +91 -0
  235. package/dist/llm/wire/orcarouter-model-catalog.js.map +1 -0
  236. package/dist/noninteractive/stream-blocks.d.ts +0 -3
  237. package/dist/noninteractive/stream-blocks.js +0 -9
  238. package/dist/noninteractive/stream-blocks.js.map +1 -1
  239. package/dist/noninteractive/stream-renderer.js +1 -4
  240. package/dist/noninteractive/stream-renderer.js.map +1 -1
  241. package/dist/store/config/endpoints.d.ts +0 -6
  242. package/dist/store/config/endpoints.js +1 -35
  243. package/dist/store/config/endpoints.js.map +1 -1
  244. package/dist/store/context-limits.d.ts +4 -0
  245. package/dist/store/context-limits.js +29 -0
  246. package/dist/store/context-limits.js.map +1 -0
  247. package/dist/store/history/jsonl-backend.js +2 -1
  248. package/dist/store/history/jsonl-backend.js.map +1 -1
  249. package/dist/store/history/jsonl-lock.js +23 -3
  250. package/dist/store/history/jsonl-lock.js.map +1 -1
  251. package/dist/store/history/lifecycle.js +3 -2
  252. package/dist/store/history/lifecycle.js.map +1 -1
  253. package/dist/store/plan/jsonl-backend.js +1 -4
  254. package/dist/store/plan/jsonl-backend.js.map +1 -1
  255. package/dist/store/plan/mutation.js +31 -1
  256. package/dist/store/plan/mutation.js.map +1 -1
  257. package/dist/store/plan/sqlite-backend.js +27 -9
  258. package/dist/store/plan/sqlite-backend.js.map +1 -1
  259. package/dist/tui-v2/components/pager/pager-line.d.ts +2 -0
  260. package/dist/tui-v2/components/pager/pager-line.js +1 -2
  261. package/dist/tui-v2/components/pager/pager-line.js.map +1 -1
  262. package/dist/tui-v2/components/pager/pager.js +5 -2
  263. package/dist/tui-v2/components/pager/pager.js.map +1 -1
  264. package/dist/tui-v2/components/transcript/tool-card.js +1 -1
  265. package/dist/tui-v2/components/transcript/tool-card.js.map +1 -1
  266. package/dist/types.d.ts +10 -1
  267. package/dist/types.js.map +1 -1
  268. package/dist/ui-core/bootstrap/composition-root.js +9 -5
  269. package/dist/ui-core/bootstrap/composition-root.js.map +1 -1
  270. package/dist/ui-core/bootstrap/session-resume.js +1 -2
  271. package/dist/ui-core/bootstrap/session-resume.js.map +1 -1
  272. package/dist/ui-core/commands/key-commands.d.ts +2 -0
  273. package/dist/ui-core/commands/key-commands.js +76 -20
  274. package/dist/ui-core/commands/key-commands.js.map +1 -1
  275. package/dist/ui-core/commands/picker-commands.js +3 -0
  276. package/dist/ui-core/commands/picker-commands.js.map +1 -1
  277. package/dist/ui-core/commands/pickers/search-reasoning.d.ts +2 -0
  278. package/dist/ui-core/commands/pickers/search-reasoning.js +1 -1
  279. package/dist/ui-core/commands/pickers/search-reasoning.js.map +1 -1
  280. package/dist/ui-core/commands/session-commands.d.ts +4 -0
  281. package/dist/ui-core/commands/session-commands.js +127 -11
  282. package/dist/ui-core/commands/session-commands.js.map +1 -1
  283. package/dist/ui-core/rendering/batch-sections.js +10 -1
  284. package/dist/ui-core/rendering/batch-sections.js.map +1 -1
  285. package/dist/ui-core/rendering/context-limit.d.ts +0 -1
  286. package/dist/ui-core/rendering/context-limit.js +2 -2
  287. package/dist/ui-core/rendering/context-limit.js.map +1 -1
  288. package/dist/ui-core/rendering/format-usage.js +29 -6
  289. package/dist/ui-core/rendering/format-usage.js.map +1 -1
  290. package/dist/ui-core/rendering/subagent-presentation.d.ts +2 -0
  291. package/dist/ui-core/rendering/subagent-presentation.js +20 -7
  292. package/dist/ui-core/rendering/subagent-presentation.js.map +1 -1
  293. package/dist/ui-core/rendering/subagent-source.js +15 -8
  294. package/dist/ui-core/rendering/subagent-source.js.map +1 -1
  295. package/dist/ui-core/state/transcript/apply-app-event.js +0 -1
  296. package/dist/ui-core/state/transcript/apply-app-event.js.map +1 -1
  297. package/dist/ui-core/state/transcript-types.js +1 -1
  298. package/dist/ui-core/state/transcript-types.js.map +1 -1
  299. package/dist/version.generated.d.ts +2 -2
  300. package/dist/version.generated.js +2 -2
  301. package/package.json +1 -1
  302. package/dist/app/controllers/session-context-limits.d.ts +0 -8
  303. package/dist/app/controllers/session-context-limits.js +0 -35
  304. package/dist/app/controllers/session-context-limits.js.map +0 -1
  305. package/dist/store/config/compaction.d.ts +0 -1
  306. package/dist/store/config/compaction.js +0 -2
  307. package/dist/store/config/compaction.js.map +0 -1
@@ -0,0 +1,101 @@
1
+ import { KIRO_AUTH_SERVICE, KIRO_DEFAULT_REGION, } from "./kiro-auth.js";
2
+ export const KIRO_SOCIAL_DEVICE_CLIENT_ID = "kiro-cli";
3
+ function record(value) {
4
+ return value && typeof value === "object" && !Array.isArray(value)
5
+ ? value
6
+ : {};
7
+ }
8
+ function text(value) {
9
+ return typeof value === "string" ? value : "";
10
+ }
11
+ function positiveMs(value, fallback) {
12
+ return typeof value === "number" && Number.isFinite(value) && value > 0
13
+ ? value
14
+ : fallback;
15
+ }
16
+ export async function startKiroSocialDeviceAuth(provider, fetchImpl = fetch) {
17
+ const response = await fetchImpl(`${KIRO_AUTH_SERVICE}/oauth/device/authorization`, {
18
+ method: "POST",
19
+ headers: { "Content-Type": "application/json", Accept: "application/json" },
20
+ body: JSON.stringify({
21
+ clientId: KIRO_SOCIAL_DEVICE_CLIENT_ID,
22
+ loginProvider: provider === "google" ? "Google" : "Github",
23
+ }),
24
+ signal: AbortSignal.timeout(30_000),
25
+ });
26
+ const json = record(await response.json().catch(() => ({})));
27
+ const deviceCode = text(json.deviceCode);
28
+ const userCode = text(json.userCode);
29
+ const verificationUri = text(json.verificationUri);
30
+ if (!response.ok || !deviceCode || !userCode || !verificationUri) {
31
+ throw new Error(`could not start Kiro ${provider} device sign-in (${response.status})`);
32
+ }
33
+ return {
34
+ provider,
35
+ deviceCode,
36
+ userCode,
37
+ verificationUri,
38
+ verificationUriComplete: text(json.verificationUriComplete) || verificationUri,
39
+ expiresInSeconds: Math.ceil(positiveMs(json.expiresInMilliseconds, 300_000) / 1000),
40
+ pollIntervalSeconds: Math.ceil(positiveMs(json.intervalInMilliseconds, 5_000) / 1000),
41
+ };
42
+ }
43
+ const TERMINAL_MESSAGES = {
44
+ access_denied: "Kiro sign-in was denied",
45
+ expired_token: "Kiro sign-in code expired — start again",
46
+ invalid_token: "Kiro sign-in code is no longer valid — start again",
47
+ };
48
+ function waitFor(ms, signal) {
49
+ return new Promise((resolve, reject) => {
50
+ const timer = setTimeout(resolve, ms);
51
+ signal?.addEventListener("abort", () => {
52
+ clearTimeout(timer);
53
+ reject(new Error("Kiro authentication cancelled"));
54
+ }, { once: true });
55
+ });
56
+ }
57
+ export async function pollKiroSocialDeviceAuth(start, options = {}) {
58
+ const fetchImpl = options.fetchImpl ?? fetch;
59
+ const wait = options.wait ?? waitFor;
60
+ const deadline = Date.now() + start.expiresInSeconds * 1000;
61
+ let interval = start.pollIntervalSeconds * 1000;
62
+ for (;;) {
63
+ if (options.signal?.aborted)
64
+ throw new Error("Kiro authentication cancelled");
65
+ const remaining = Math.ceil((deadline - Date.now()) / 1000);
66
+ if (remaining <= 0)
67
+ throw new Error(TERMINAL_MESSAGES.expired_token);
68
+ options.onPending?.(remaining);
69
+ const response = await fetchImpl(`${KIRO_AUTH_SERVICE}/oauth/device/poll`, {
70
+ method: "POST",
71
+ headers: { "Content-Type": "application/json", Accept: "application/json" },
72
+ body: JSON.stringify({
73
+ deviceCode: start.deviceCode,
74
+ clientId: KIRO_SOCIAL_DEVICE_CLIENT_ID,
75
+ }),
76
+ signal: AbortSignal.timeout(30_000),
77
+ });
78
+ const json = record(await response.json().catch(() => ({})));
79
+ const accessToken = text(json.accessToken);
80
+ if (response.ok && accessToken) {
81
+ const expiresIn = typeof json.expiresIn === "number" ? json.expiresIn : 3600;
82
+ return {
83
+ accessToken,
84
+ ...(text(json.refreshToken) ? { refreshToken: text(json.refreshToken) } : {}),
85
+ ...(text(json.profileArn) ? { profileArn: text(json.profileArn) } : {}),
86
+ expiresAt: Date.now() + expiresIn * 1000,
87
+ authMethod: start.provider,
88
+ region: KIRO_DEFAULT_REGION,
89
+ };
90
+ }
91
+ const status = text(json.error) || text(json.status) || String(response.status);
92
+ if (status === "authorization_pending" || status === "slow_down") {
93
+ if (status === "slow_down")
94
+ interval += 5_000;
95
+ await wait(interval, options.signal);
96
+ continue;
97
+ }
98
+ throw new Error(TERMINAL_MESSAGES[status] ?? `Kiro sign-in failed (${status})`);
99
+ }
100
+ }
101
+ //# sourceMappingURL=kiro-social-device.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kiro-social-device.js","sourceRoot":"","sources":["../../src/llm/kiro-social-device.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
- import { type LlmProvider } from "./provider.js";
1
+ import type { CompletionRequest } from "../types.js";
2
+ import { type LlmProvider, type ProviderAuth } from "./provider.js";
3
+ import { type KiroCredential, type KiroModelInfo, type KiroUsageLimits } from "./kiro-auth.js";
2
4
  export declare const kiroFallbackModels: readonly string[];
3
5
  export declare function isThinkingModel(model: string): boolean;
4
6
  export declare function isAgenticModel(model: string): boolean;
@@ -7,4 +9,8 @@ export declare function resolveKiroModel(model: string): {
7
9
  agentic: boolean;
8
10
  thinking: boolean;
9
11
  };
12
+ export declare function buildKiroRequestBody(request: CompletionRequest, credential: KiroCredential, upstreamModel: string, agentic: boolean, thinking: boolean): Record<string, unknown>;
13
+ export declare function kiroModelCatalog(): readonly KiroModelInfo[];
14
+ export declare function resetKiroModelCacheForTesting(): void;
15
+ export declare function fetchKiroUsageLimits(auth: ProviderAuth, onStatus?: ((message: string) => void) | undefined): Promise<KiroUsageLimits>;
10
16
  export declare const kiroProvider: LlmProvider;