@pentoshi/clai 3.9.6 → 3.10.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 (182) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +81 -9
  3. package/dist/agent/context-manager.d.ts +2 -1
  4. package/dist/agent/context-manager.js +16 -2
  5. package/dist/agent/context-manager.js.map +1 -1
  6. package/dist/agent/loop-guard.d.ts +26 -3
  7. package/dist/agent/loop-guard.js +85 -1
  8. package/dist/agent/loop-guard.js.map +1 -1
  9. package/dist/agent/must-continue.js +4 -8
  10. package/dist/agent/must-continue.js.map +1 -1
  11. package/dist/agent/prompt-composer.js +8 -8
  12. package/dist/agent/prompt-composer.js.map +1 -1
  13. package/dist/agent/runner.d.ts +1 -0
  14. package/dist/agent/runner.js +238 -74
  15. package/dist/agent/runner.js.map +1 -1
  16. package/dist/agent/session-policy.d.ts +1 -2
  17. package/dist/agent/session-policy.js +3 -2
  18. package/dist/agent/session-policy.js.map +1 -1
  19. package/dist/agent/tool-call-parser.js +6 -6
  20. package/dist/agent/tool-call-parser.js.map +1 -1
  21. package/dist/app/adapters/current-agent-adapter.js +1 -0
  22. package/dist/app/adapters/current-agent-adapter.js.map +1 -1
  23. package/dist/app/controllers/session-controller.js +2 -0
  24. package/dist/app/controllers/session-controller.js.map +1 -1
  25. package/dist/app/controllers/session-turn-request.d.ts +1 -0
  26. package/dist/app/controllers/session-turn-request.js +4 -1
  27. package/dist/app/controllers/session-turn-request.js.map +1 -1
  28. package/dist/app/ports/agent-port.d.ts +1 -0
  29. package/dist/attachments/clipboard-image.js +5 -4
  30. package/dist/attachments/clipboard-image.js.map +1 -1
  31. package/dist/attachments/image-content.d.ts +20 -2
  32. package/dist/attachments/image-content.js +201 -1
  33. package/dist/attachments/image-content.js.map +1 -1
  34. package/dist/attachments/image-prepare.d.ts +25 -0
  35. package/dist/attachments/image-prepare.js +390 -0
  36. package/dist/attachments/image-prepare.js.map +1 -0
  37. package/dist/attachments/service.d.ts +4 -2
  38. package/dist/attachments/service.js +51 -21
  39. package/dist/attachments/service.js.map +1 -1
  40. package/dist/commands/providers.d.ts +5 -2
  41. package/dist/commands/providers.js +121 -7
  42. package/dist/commands/providers.js.map +1 -1
  43. package/dist/index.js +12 -4
  44. package/dist/index.js.map +1 -1
  45. package/dist/llm/agentrouter.js +2 -2
  46. package/dist/llm/agentrouter.js.map +1 -1
  47. package/dist/llm/anthropic.d.ts +5 -4
  48. package/dist/llm/anthropic.js +28 -25
  49. package/dist/llm/anthropic.js.map +1 -1
  50. package/dist/llm/aws-mantle.js +19 -20
  51. package/dist/llm/aws-mantle.js.map +1 -1
  52. package/dist/llm/bynara.js +2 -2
  53. package/dist/llm/bynara.js.map +1 -1
  54. package/dist/llm/capabilities.d.ts +19 -0
  55. package/dist/llm/capabilities.js +273 -16
  56. package/dist/llm/capabilities.js.map +1 -1
  57. package/dist/llm/gemini.js +16 -8
  58. package/dist/llm/gemini.js.map +1 -1
  59. package/dist/llm/groq.js +2 -2
  60. package/dist/llm/groq.js.map +1 -1
  61. package/dist/llm/http.d.ts +7 -1
  62. package/dist/llm/http.js +210 -8
  63. package/dist/llm/http.js.map +1 -1
  64. package/dist/llm/kimchi.js +2 -2
  65. package/dist/llm/kimchi.js.map +1 -1
  66. package/dist/llm/lightning.d.ts +11 -0
  67. package/dist/llm/lightning.js +108 -0
  68. package/dist/llm/lightning.js.map +1 -0
  69. package/dist/llm/modal.d.ts +16 -0
  70. package/dist/llm/modal.js +182 -0
  71. package/dist/llm/modal.js.map +1 -0
  72. package/dist/llm/nvidia.js +2 -2
  73. package/dist/llm/nvidia.js.map +1 -1
  74. package/dist/llm/ollama.js +3 -3
  75. package/dist/llm/ollama.js.map +1 -1
  76. package/dist/llm/openai.js +2 -2
  77. package/dist/llm/openai.js.map +1 -1
  78. package/dist/llm/openrouter.js +2 -2
  79. package/dist/llm/openrouter.js.map +1 -1
  80. package/dist/llm/provider.d.ts +11 -0
  81. package/dist/llm/provider.js +316 -1
  82. package/dist/llm/provider.js.map +1 -1
  83. package/dist/llm/qwen-cloud.js +2 -5
  84. package/dist/llm/qwen-cloud.js.map +1 -1
  85. package/dist/llm/router.js +127 -7
  86. package/dist/llm/router.js.map +1 -1
  87. package/dist/llm/system-messages.d.ts +5 -0
  88. package/dist/llm/system-messages.js +14 -0
  89. package/dist/llm/system-messages.js.map +1 -1
  90. package/dist/llm/token-usage.d.ts +13 -0
  91. package/dist/llm/token-usage.js +31 -0
  92. package/dist/llm/token-usage.js.map +1 -1
  93. package/dist/llm/tokenrouter.d.ts +15 -0
  94. package/dist/llm/tokenrouter.js +106 -0
  95. package/dist/llm/tokenrouter.js.map +1 -0
  96. package/dist/modes/agent.d.ts +1 -0
  97. package/dist/modes/agent.js.map +1 -1
  98. package/dist/modes/ask.js +15 -4
  99. package/dist/modes/ask.js.map +1 -1
  100. package/dist/prompts/embedded.js +2 -2
  101. package/dist/prompts/embedded.js.map +1 -1
  102. package/dist/prompts/index.d.ts +6 -0
  103. package/dist/prompts/index.js +39 -21
  104. package/dist/prompts/index.js.map +1 -1
  105. package/dist/prompts/system.agent.md +15 -27
  106. package/dist/prompts/system.ask.md +1 -1
  107. package/dist/repl/slash-commands.js +53 -0
  108. package/dist/repl/slash-commands.js.map +1 -1
  109. package/dist/repl.js +16 -9
  110. package/dist/repl.js.map +1 -1
  111. package/dist/store/config.d.ts +55 -0
  112. package/dist/store/config.js +127 -0
  113. package/dist/store/config.js.map +1 -1
  114. package/dist/store/history.d.ts +2 -1
  115. package/dist/store/history.js +15 -16
  116. package/dist/store/history.js.map +1 -1
  117. package/dist/store/keys.js +41 -2
  118. package/dist/store/keys.js.map +1 -1
  119. package/dist/tools/definitions.js +31 -6
  120. package/dist/tools/definitions.js.map +1 -1
  121. package/dist/tools/image.d.ts +0 -7
  122. package/dist/tools/image.js +76 -22
  123. package/dist/tools/image.js.map +1 -1
  124. package/dist/tools/jobs.d.ts +11 -1
  125. package/dist/tools/jobs.js +67 -0
  126. package/dist/tools/jobs.js.map +1 -1
  127. package/dist/tools/ocr.d.ts +28 -0
  128. package/dist/tools/ocr.js +316 -0
  129. package/dist/tools/ocr.js.map +1 -0
  130. package/dist/tools/pdf.d.ts +0 -12
  131. package/dist/tools/pdf.js +436 -150
  132. package/dist/tools/pdf.js.map +1 -1
  133. package/dist/tools/registry.js +5 -0
  134. package/dist/tools/registry.js.map +1 -1
  135. package/dist/tui/format-keys.js +10 -0
  136. package/dist/tui/format-keys.js.map +1 -1
  137. package/dist/tui-v2/actions/action-id.d.ts +1 -1
  138. package/dist/tui-v2/actions/action-id.js +2 -0
  139. package/dist/tui-v2/actions/action-id.js.map +1 -1
  140. package/dist/tui-v2/actions/format-shortcuts.js +3 -1
  141. package/dist/tui-v2/actions/format-shortcuts.js.map +1 -1
  142. package/dist/tui-v2/actions/keymap.js +4 -1
  143. package/dist/tui-v2/actions/keymap.js.map +1 -1
  144. package/dist/tui-v2/app/commands/key-commands.js +117 -15
  145. package/dist/tui-v2/app/commands/key-commands.js.map +1 -1
  146. package/dist/tui-v2/app/commands/picker-commands.js +80 -11
  147. package/dist/tui-v2/app/commands/picker-commands.js.map +1 -1
  148. package/dist/tui-v2/components/jobs/jobs-panel.js +25 -1
  149. package/dist/tui-v2/components/jobs/jobs-panel.js.map +1 -1
  150. package/dist/tui-v2/components/modal/keys-modal.js +15 -8
  151. package/dist/tui-v2/components/modal/keys-modal.js.map +1 -1
  152. package/dist/tui-v2/components/modal/secret-modal.js +13 -4
  153. package/dist/tui-v2/components/modal/secret-modal.js.map +1 -1
  154. package/dist/tui-v2/components/pager/pager.js +103 -12
  155. package/dist/tui-v2/components/pager/pager.js.map +1 -1
  156. package/dist/tui-v2/components/transcript/thinking-block.d.ts +11 -3
  157. package/dist/tui-v2/components/transcript/thinking-block.js +5 -4
  158. package/dist/tui-v2/components/transcript/thinking-block.js.map +1 -1
  159. package/dist/tui-v2/components/transcript/transcript-row.d.ts +2 -0
  160. package/dist/tui-v2/components/transcript/transcript-row.js +2 -2
  161. package/dist/tui-v2/components/transcript/transcript-row.js.map +1 -1
  162. package/dist/tui-v2/components/transcript/transcript-view.js +8 -1
  163. package/dist/tui-v2/components/transcript/transcript-view.js.map +1 -1
  164. package/dist/tui-v2/controllers/overlay-controller.d.ts +13 -0
  165. package/dist/tui-v2/controllers/overlay-controller.js +5 -2
  166. package/dist/tui-v2/controllers/overlay-controller.js.map +1 -1
  167. package/dist/tui-v2/rendering/artifact-pager-source.d.ts +10 -0
  168. package/dist/tui-v2/rendering/artifact-pager-source.js +6 -0
  169. package/dist/tui-v2/rendering/artifact-pager-source.js.map +1 -1
  170. package/dist/tui-v2/rendering/job-tail-source.d.ts +21 -0
  171. package/dist/tui-v2/rendering/job-tail-source.js +87 -0
  172. package/dist/tui-v2/rendering/job-tail-source.js.map +1 -0
  173. package/dist/types.d.ts +7 -1
  174. package/dist/types.js +3 -0
  175. package/dist/types.js.map +1 -1
  176. package/dist/ui/mentions.d.ts +7 -2
  177. package/dist/ui/mentions.js +52 -117
  178. package/dist/ui/mentions.js.map +1 -1
  179. package/dist/version.generated.d.ts +2 -2
  180. package/dist/version.generated.js +2 -2
  181. package/dist/version.generated.js.map +1 -1
  182. package/package.json +1 -1
@@ -3,8 +3,8 @@
3
3
  */
4
4
  import { getProvider } from "../../../llm/router.js";
5
5
  import { MAX_PROVIDER_KEYS } from "../../../llm/key-rotation.js";
6
- import { assertProvider, getProviderInfoText, maskSecret, } from "../../../llm/provider.js";
7
- import { getConfig, updateConfig } from "../../../store/config.js";
6
+ import { assertProvider, getProviderInfoText, maskSecret, normalizeEndpointUrl, } from "../../../llm/provider.js";
7
+ import { MAX_PROVIDER_ENDPOINTS, appendProviderEndpoint, getConfig, getProviderEndpoints, providerUsesEndpoints, setProviderEndpoints, updateConfig, } from "../../../store/config.js";
8
8
  import { appendSearchProviderKey, getProviderKeys, getSearchProviderKeys, listProviderStatuses, setProviderKeys, setSearchProviderKeys, unsetProviderSecret, unsetSearchProviderSecret, } from "../../../store/keys.js";
9
9
  import { searchProviderIds } from "../../../tools/web/types.js";
10
10
  import { formatKeyStatus } from "../../../tui/format-keys.js";
@@ -102,7 +102,7 @@ async function openSetPicker(services) {
102
102
  const llm = await listProviderStatuses(active);
103
103
  const search = await getSearchKeyStatuses();
104
104
  const options = [
105
- ...llm.map((status) => {
105
+ ...llm.flatMap((status) => {
106
106
  const count = status.keyCount ?? (status.configured ? 1 : 0);
107
107
  const keyLabel = status.provider === "ollama"
108
108
  ? status.configured
@@ -113,11 +113,24 @@ async function openSetPicker(services) {
113
113
  : count === 1
114
114
  ? `✓ ${status.maskedKey ?? "1 key"}`
115
115
  : `✓ ${count} keys`;
116
- return {
116
+ const row = {
117
117
  value: `llm:${status.provider}`,
118
118
  label: `${status.provider} ${keyLabel}${status.active ? " (active)" : ""}`,
119
119
  description: status.model,
120
120
  };
121
+ // Endpoint providers get a second row so the URL list is reachable
122
+ // directly instead of only via the key editor.
123
+ if (!status.endpoints)
124
+ return [row];
125
+ const urlCount = status.endpoints.length;
126
+ return [
127
+ row,
128
+ {
129
+ value: `endpoint:${status.provider}`,
130
+ label: `${status.provider} endpoints ${urlCount === 0 ? "✗ none" : `✓ ${urlCount} URL${urlCount === 1 ? "" : "s"}`}`,
131
+ description: status.note ?? "endpoint URLs",
132
+ },
133
+ ];
121
134
  }),
122
135
  ...search.map((status) => {
123
136
  const count = status.keyCount ?? 0;
@@ -135,13 +148,16 @@ async function openSetPicker(services) {
135
148
  };
136
149
  }),
137
150
  ];
138
- services.overlay.openPicker({ title: "Set API key for provider", options }, (value) => {
151
+ services.overlay.openPicker({ title: "Set API key / endpoint", options }, (value) => {
139
152
  services.overlay.close();
140
153
  void (async () => {
141
- const isSearch = value.startsWith("search:");
142
- const id = value.split(":")[1];
143
- if (isSearch)
154
+ const separator = value.indexOf(":");
155
+ const kind = value.slice(0, separator);
156
+ const id = value.slice(separator + 1);
157
+ if (kind === "search")
144
158
  await openSearchKeysEditor(services, id);
159
+ else if (kind === "endpoint")
160
+ await openEndpointsEditor(services, id);
145
161
  else
146
162
  await openLlmKeysEditor(services, id);
147
163
  })();
@@ -152,7 +168,7 @@ async function openUnsetPicker(services) {
152
168
  const llm = await listProviderStatuses(active);
153
169
  const search = await getSearchKeyStatuses();
154
170
  const options = [
155
- ...llm.map((status) => {
171
+ ...llm.flatMap((status) => {
156
172
  const count = status.keyCount ?? (status.configured ? 1 : 0);
157
173
  const keyLabel = status.provider === "ollama"
158
174
  ? "host (config)"
@@ -161,11 +177,21 @@ async function openUnsetPicker(services) {
161
177
  : count === 1
162
178
  ? `✓ ${status.maskedKey ?? "1 key"}`
163
179
  : `✓ ${count} keys — reset all`;
164
- return {
180
+ const row = {
165
181
  value: `llm:${status.provider}`,
166
182
  label: `${status.provider} ${keyLabel}${status.active ? " (active)" : ""}`,
167
183
  description: status.model,
168
184
  };
185
+ if (!status.endpoints || status.endpoints.length === 0)
186
+ return [row];
187
+ return [
188
+ row,
189
+ {
190
+ value: `endpoint:${status.provider}`,
191
+ label: `${status.provider} endpoints ✓ ${status.endpoints.length} URL${status.endpoints.length === 1 ? "" : "s"} — clear all`,
192
+ description: status.note ?? "endpoint URLs",
193
+ },
194
+ ];
169
195
  }),
170
196
  ...search.map((status) => {
171
197
  const count = status.keyCount ?? 0;
@@ -183,23 +209,78 @@ async function openUnsetPicker(services) {
183
209
  };
184
210
  }),
185
211
  ];
186
- services.overlay.openPicker({ title: "Unset API key for provider", options }, (value) => {
212
+ services.overlay.openPicker({ title: "Unset API key / endpoint", options }, (value) => {
187
213
  services.overlay.close();
188
214
  void (async () => {
189
- const isSearch = value.startsWith("search:");
190
- const id = value.split(":")[1];
191
- if (isSearch)
215
+ const separator = value.indexOf(":");
216
+ const kind = value.slice(0, separator);
217
+ const id = value.slice(separator + 1);
218
+ if (kind === "search")
192
219
  await unsetSearchKey(services, id);
220
+ else if (kind === "endpoint") {
221
+ const count = getProviderEndpoints(id).urls.length;
222
+ setProviderEndpoints(id, []);
223
+ notice(services, "info", `unset ${count} endpoint URL(s) for ${id}`);
224
+ }
193
225
  else
194
226
  await unsetLlmKey(services, id);
195
227
  })();
196
228
  });
197
229
  }
230
+ /**
231
+ * Multi-row editor over a provider's endpoint URLs — the same overlay, sticky
232
+ * ★ active row and Reset semantics as the key editor, so endpoints and keys
233
+ * behave identically.
234
+ */
235
+ async function openEndpointsEditor(services, id) {
236
+ const { urls, activeIndex } = getProviderEndpoints(id);
237
+ const answer = await services.overlay.openKeysEditor({
238
+ provider: id,
239
+ heading: "ENDPOINTS",
240
+ itemLabel: "endpoint URL",
241
+ // URLs are not secrets: show them in full so a typo is visible.
242
+ initialKeys: urls.map((url, index) => ({ id: String(index), masked: url })),
243
+ activeIndex,
244
+ });
245
+ if (!answer) {
246
+ notice(services, "info", "cancelled");
247
+ return;
248
+ }
249
+ if (answer.action === "reset") {
250
+ setProviderEndpoints(id, []);
251
+ notice(services, "info", `unset all endpoint URLs for ${id}`);
252
+ return;
253
+ }
254
+ const byId = new Map(urls.map((url, index) => [String(index), url]));
255
+ const resolved = resolveEditorRows(answer.rows, byId).map(normalizeEndpointUrl);
256
+ if (resolved.length === 0) {
257
+ setProviderEndpoints(id, []);
258
+ notice(services, "info", `unset all endpoint URLs for ${id}`);
259
+ return;
260
+ }
261
+ if (resolved.length > MAX_PROVIDER_ENDPOINTS) {
262
+ notice(services, "warn", `at most ${MAX_PROVIDER_ENDPOINTS} endpoint URLs per provider`);
263
+ return;
264
+ }
265
+ // Keep whatever was active if it survived the edit, mirroring key editing.
266
+ let nextActive = answer.activeIndex ?? 0;
267
+ if (answer.activeIndex === undefined) {
268
+ const previous = urls[activeIndex];
269
+ const found = previous ? resolved.indexOf(previous) : -1;
270
+ if (found >= 0)
271
+ nextActive = found;
272
+ }
273
+ const saved = setProviderEndpoints(id, resolved, nextActive);
274
+ notice(services, "info", saved.urls.length === 1
275
+ ? `saved ${id} endpoint → ${saved.urls[0]}`
276
+ : `saved ${saved.urls.length} ${id} endpoints · active #${saved.activeIndex + 1} ${saved.urls[saved.activeIndex]}`);
277
+ }
198
278
  async function openLlmKeysEditor(services, id) {
199
279
  if (id === "ollama") {
200
280
  const host = await services.overlay.openSecret({
201
281
  title: "Ollama host URL",
202
282
  prompt: "Enter host URL for Ollama:",
283
+ reveal: true,
203
284
  });
204
285
  if (!host) {
205
286
  notice(services, "info", "cancelled");
@@ -209,6 +290,11 @@ async function openLlmKeysEditor(services, id) {
209
290
  notice(services, "info", `saved ollama host → ${host.trim()}`);
210
291
  return;
211
292
  }
293
+ // Endpoint providers need both lists; edit URLs first (Esc skips ahead to the
294
+ // keys), or jump straight to either list from the /set picker.
295
+ if (providerUsesEndpoints(id)) {
296
+ await openEndpointsEditor(services, id);
297
+ }
212
298
  const multi = await getProviderKeys(id);
213
299
  const stored = multi.source === "env"
214
300
  ? []
@@ -329,9 +415,25 @@ async function appendLlmKey(services, id, keyVal) {
329
415
  notice(services, "info", `saved ollama host → ${keyVal.trim()}`);
330
416
  return;
331
417
  }
418
+ // `/set modal https://…` is unambiguous: a URL can only be an endpoint,
419
+ // never an API key or a `<token-id>:<token-secret>` pair. Appended and made
420
+ // active, exactly like the CLI's `--url`.
421
+ if (providerUsesEndpoints(id) && /^https?:\/\//i.test(keyVal.trim())) {
422
+ const endpoint = normalizeEndpointUrl(keyVal.trim());
423
+ try {
424
+ const { endpoints, added } = appendProviderEndpoint(id, endpoint);
425
+ notice(services, "info", `${added ? "saved" : "activated"} ${id} endpoint #${endpoints.activeIndex + 1}/${endpoints.urls.length} → ${endpoint}`);
426
+ }
427
+ catch (error) {
428
+ notice(services, "warn", error instanceof Error ? error.message : String(error));
429
+ }
430
+ return;
431
+ }
332
432
  const key = keyVal.trim();
333
433
  if (!getProvider(id).validateKey(key)) {
334
- notice(services, "warn", `invalid API key format for ${id}`);
434
+ notice(services, "warn", providerUsesEndpoints(id)
435
+ ? `invalid value for ${id} · expected a key/token, or an https:// URL to add an endpoint`
436
+ : `invalid API key format for ${id}`);
335
437
  return;
336
438
  }
337
439
  const { appendProviderKey } = await import("../../../store/keys.js");
@@ -1 +1 @@
1
- {"version":3,"file":"key-commands.js","sourceRoot":"","sources":["../../../../src/tui-v2/app/commands/key-commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"key-commands.js","sourceRoot":"","sources":["../../../../src/tui-v2/app/commands/key-commands.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  * permissions/output/plan (V2-072, V2-080).
4
4
  */
5
5
  import { getProvider, providerAuth } from "../../../llm/router.js";
6
- import { defaultModels } from "../../../llm/provider.js";
6
+ import { defaultModels, normalizeEndpointUrl } from "../../../llm/provider.js";
7
7
  import { modelSupportsThinking } from "../../../llm/capabilities.js";
8
8
  import { assertProvider } from "../../../llm/provider.js";
9
9
  import { assertSearchProvider } from "../../../tools/web/providers/provider.js";
@@ -12,7 +12,7 @@ import { asExaSearchType, exaSearchTypeDescriptions, exaSearchTypes, searchProvi
12
12
  import { providerIds } from "../../../types.js";
13
13
  import { getKnownModels } from "../../../repl/slash-commands.js";
14
14
  import { clearActiveProjectRoot } from "../../../agent/project-root.js";
15
- import { getConfig, getExaSearchType, getProviderModel, setActiveSearchProvider, setDefaultProvider, setExaSearchType, setProviderModel, setThinking, updateConfig, } from "../../../store/config.js";
15
+ import { appendProviderEndpoint, getActiveProviderEndpoint, getConfig, getExaSearchType, getProviderModel, setActiveSearchProvider, setDefaultProvider, setExaSearchType, setProviderModel, setThinking, updateConfig, } from "../../../store/config.js";
16
16
  import { envValue, getProviderSecret, getSearchProviderKey, setProviderSecret, setSecret, } from "../../../store/keys.js";
17
17
  import { getSession, listSessionSummaries, } from "../../../store/history.js";
18
18
  import { relativeTime, shortCwd } from "../../../tui/text-format.js";
@@ -126,16 +126,31 @@ export function handleProvider(services, invocation) {
126
126
  });
127
127
  }
128
128
  async function activateProvider(services, next) {
129
- const configured = next === "ollama" || Boolean(envValue(next)) || Boolean((await getProviderSecret(next)).value);
130
- if (!configured) {
131
- services.overlay.close();
132
- const key = await services.overlay.openSecret({
133
- title: `${next} API key`,
134
- prompt: `No API key is configured for ${next}. Enter it now to activate this provider.`,
135
- });
136
- if (!key || !getProvider(next).validateKey(key.trim()))
129
+ // Modal needs two separate things, so it gets its own onboarding.
130
+ if (next === "modal") {
131
+ if (!(await ensureModalCredentials(services)))
137
132
  return;
138
- await setProviderSecret(next, key.trim());
133
+ }
134
+ else {
135
+ const configured = next === "ollama" || Boolean(envValue(next)) || Boolean((await getProviderSecret(next)).value);
136
+ if (!configured) {
137
+ services.overlay.close();
138
+ const key = await services.overlay.openSecret({
139
+ title: `${next} API key`,
140
+ prompt: `No API key is configured for ${next}. Enter it now to activate this provider.`,
141
+ });
142
+ const value = key?.trim();
143
+ if (!value) {
144
+ services.session.notice("info", `cancelled · provider unchanged`);
145
+ return;
146
+ }
147
+ // Silence here used to look like the picker had simply ignored the input.
148
+ if (!getProvider(next).validateKey(value)) {
149
+ services.session.notice("warn", `invalid API key format for ${next} · provider unchanged`);
150
+ return;
151
+ }
152
+ await setProviderSecret(next, value);
153
+ }
139
154
  }
140
155
  const model = getConfig().providerModels[next] ?? defaultModels[next];
141
156
  setDefaultProvider(next);
@@ -144,6 +159,60 @@ async function activateProvider(services, next) {
144
159
  services.overlay.close();
145
160
  services.session.notice("info", `provider → ${next} · model → ${model}`);
146
161
  }
162
+ /**
163
+ * Modal is the only provider that needs two things before it can serve a
164
+ * request: the workspace endpoint URL (config) and a proxy token pair
165
+ * (secret). Ask for whichever is missing, endpoint first — that is the value
166
+ * people reach for, and a URL typed into a token prompt used to fail
167
+ * `validateKey` and silently abandon the switch.
168
+ *
169
+ * Returns false when the user cancelled or entered something unusable, in
170
+ * which case the active provider is left alone.
171
+ */
172
+ async function ensureModalCredentials(services) {
173
+ const hasToken = Boolean(envValue("modal")) || Boolean((await getProviderSecret("modal")).value);
174
+ if (!getActiveProviderEndpoint("modal")) {
175
+ services.overlay.close();
176
+ const answer = await services.overlay.openSecret({
177
+ title: hasToken ? "Modal endpoint URL" : "Modal endpoint URL (1 of 2)",
178
+ prompt: "Paste your Modal endpoint URL, e.g. https://<workspace>--ep-<endpoint>.<region>.modal.direct",
179
+ reveal: true,
180
+ });
181
+ const url = answer?.trim();
182
+ if (!url) {
183
+ services.session.notice("info", "cancelled · provider unchanged");
184
+ return false;
185
+ }
186
+ const endpoint = normalizeEndpointUrl(url);
187
+ appendProviderEndpoint("modal", endpoint);
188
+ services.session.notice("info", `modal endpoint → ${endpoint}`);
189
+ }
190
+ if (!hasToken) {
191
+ services.overlay.close();
192
+ const answer = await services.overlay.openSecret({
193
+ title: "Modal proxy token (2 of 2)",
194
+ prompt: "Enter the proxy token pair as <token-id>:<token-secret> — create one with: modal workspace proxy-tokens create",
195
+ });
196
+ const token = answer?.trim();
197
+ if (!token) {
198
+ services.session.notice("info", "cancelled · provider unchanged");
199
+ return false;
200
+ }
201
+ // Another URL means the user is still answering the previous question.
202
+ if (/^https?:\/\//i.test(token)) {
203
+ const endpoint = normalizeEndpointUrl(token);
204
+ appendProviderEndpoint("modal", endpoint);
205
+ services.session.notice("warn", `saved that as the endpoint (${endpoint}) · modal still needs a wk-…:ws-… token pair — run /provider modal again`);
206
+ return false;
207
+ }
208
+ if (!getProvider("modal").validateKey(token)) {
209
+ services.session.notice("warn", "expected a proxy token pair like wk-tokenId:ws-tokenSecret · provider unchanged");
210
+ return false;
211
+ }
212
+ await setProviderSecret("modal", token);
213
+ }
214
+ return true;
215
+ }
147
216
  export function handleSearch(services, invocation) {
148
217
  const args = invocation.args.trim();
149
218
  if (args) {
@@ -1 +1 @@
1
- {"version":3,"file":"picker-commands.js","sourceRoot":"","sources":["../../../../src/tui-v2/app/commands/picker-commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"picker-commands.js","sourceRoot":"","sources":["../../../../src/tui-v2/app/commands/picker-commands.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ import { formatJobElapsed } from "../../../tools/jobs.js";
14
14
  import { chordFromKeyEvent } from "../../actions/chord-from-key.js";
15
15
  import { useSessionState } from "../../state/use-session-state.js";
16
16
  import { responderStatusText } from "../status/status-line.js";
17
+ import { createJobTailPagerSource, isLiveJobStatus, jobTailTitle, } from "../../rendering/job-tail-source.js";
17
18
  const POLL_MS = 1000;
18
19
  /** Rows the inline Responder widget shows before deferring to the Jobs overlay.
19
20
  * Kept small so the bottom docked stack (prompt + composer + status) never
@@ -106,6 +107,25 @@ export function JobsPanel(props) {
106
107
  services.overlay.close();
107
108
  services.overlay.openPager(`${job.command} · tail`, result.output);
108
109
  }
110
+ /**
111
+ * Live output view. The pager stays stacked over this panel, so closing it
112
+ * returns to the job list instead of the transcript.
113
+ */
114
+ function viewLive(job) {
115
+ const source = createJobTailPagerSource({
116
+ jobs: services.ports.jobs,
117
+ jobId: job.id,
118
+ });
119
+ if (!source) {
120
+ setNote("This job has no output artifact to view.");
121
+ return;
122
+ }
123
+ const opened = services.overlay.openPager(jobTailTitle(job.commandDisplay || job.command, isLiveJobStatus(job.status)), "", source);
124
+ if (!opened) {
125
+ source.dispose();
126
+ setNote("Could not open the output view.");
127
+ }
128
+ }
109
129
  useKeyboard((key) => {
110
130
  if (key.eventType === "release")
111
131
  return;
@@ -133,6 +153,10 @@ export function JobsPanel(props) {
133
153
  if (job)
134
154
  void tail(job);
135
155
  break;
156
+ case "jobs.view-live":
157
+ if (job)
158
+ viewLive(job);
159
+ break;
136
160
  case "jobs.close":
137
161
  services.overlay.close();
138
162
  break;
@@ -143,7 +167,7 @@ export function JobsPanel(props) {
143
167
  // Full session id — these are short (`sess-<time36>-<rand6>`) and truncation
144
168
  // made history/jobs look like broken ids (`sess-mrq…`).
145
169
  const titleLine = `Background jobs · session ${services.session.sessionId}`;
146
- const helpLine = "up/down:select · enter/t:tail · k:kill · q/esc:close";
170
+ const helpLine = "up/down:select · enter/v:view live · t:snapshot · k:kill · q/esc:close";
147
171
  const notificationByJob = new Map(services.ports.jobs
148
172
  .pendingNotifications(services.session.sessionId)
149
173
  .map((notification) => [notification.jobId, notification]));