@gtc6244/immediacy-daemon 0.1.14 → 0.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.
- package/dist/src/agent/claude.d.ts +14 -0
- package/dist/src/agent/claude.js +171 -118
- package/dist/src/agent/claude.js.map +1 -1
- package/dist/src/agent/model-error.d.ts +8 -0
- package/dist/src/agent/model-error.js +13 -0
- package/dist/src/agent/model-error.js.map +1 -1
- package/dist/src/models.d.ts +6 -0
- package/dist/src/models.js +40 -1
- package/dist/src/models.js.map +1 -1
- package/dist/src/protocol.d.ts +32 -1
- package/dist/src/server.js +1 -1
- package/dist/src/server.js.map +1 -1
- package/dist/src/session-map.d.ts +33 -0
- package/dist/src/session-map.js +48 -0
- package/dist/src/session-map.js.map +1 -0
- package/dist/src/types.d.ts +16 -1
- package/dist/src/workspace.d.ts +9 -1
- package/dist/src/workspace.js +79 -5
- package/dist/src/workspace.js.map +1 -1
- package/package.json +4 -2
|
@@ -35,6 +35,14 @@ export declare class ClaudeAgent extends BaseAgent {
|
|
|
35
35
|
*/
|
|
36
36
|
private pendingCalls;
|
|
37
37
|
private inputQueue;
|
|
38
|
+
/**
|
|
39
|
+
* Messages the input stream has yielded to the SDK but that haven't yet been
|
|
40
|
+
* confirmed by a first inbound SDK message. If a `--resume` is rejected (the
|
|
41
|
+
* session is gone — see the recovery in {@link runLoop}) we abandon that query
|
|
42
|
+
* and re-queue these so the fresh, resume-less query still sees the prompt
|
|
43
|
+
* instead of hanging on an empty queue. Cleared once the turn is live.
|
|
44
|
+
*/
|
|
45
|
+
private inFlight;
|
|
38
46
|
private inputResolver;
|
|
39
47
|
private closed;
|
|
40
48
|
private started;
|
|
@@ -65,6 +73,12 @@ export declare class ClaudeAgent extends BaseAgent {
|
|
|
65
73
|
stop(): Promise<void>;
|
|
66
74
|
/** Push-based async iterable of user messages for the SDK's streaming input. */
|
|
67
75
|
private inputStream;
|
|
76
|
+
/**
|
|
77
|
+
* Build and launch the SDK query for the current turn, resuming
|
|
78
|
+
* `this.sessionId` when it's set. Extracted from runLoop so a recoverable
|
|
79
|
+
* resume miss can relaunch it once, fresh (with `this.sessionId` cleared).
|
|
80
|
+
*/
|
|
81
|
+
private startQuery;
|
|
68
82
|
private runLoop;
|
|
69
83
|
private handleMessage;
|
|
70
84
|
/** Surface any base64 image blocks in a message/tool-result as image events. */
|
package/dist/src/agent/claude.js
CHANGED
|
@@ -21,7 +21,7 @@ import { BaseAgent } from "./agent.js";
|
|
|
21
21
|
import { PermissionGate, QuestionGate } from "../permission-gate.js";
|
|
22
22
|
import { isWorkspaceScoped } from "./workspace-scope.js";
|
|
23
23
|
import { extractImages } from "./images.js";
|
|
24
|
-
import { classifyModelError } from "./model-error.js";
|
|
24
|
+
import { classifyModelError, isSessionNotFound } from "./model-error.js";
|
|
25
25
|
import { detectUsageLimit } from "../usage-limit.js";
|
|
26
26
|
import { extractTurnUsage } from "../usage.js";
|
|
27
27
|
import { logger } from "../log.js";
|
|
@@ -45,6 +45,14 @@ export class ClaudeAgent extends BaseAgent {
|
|
|
45
45
|
*/
|
|
46
46
|
pendingCalls = new Map();
|
|
47
47
|
inputQueue = [];
|
|
48
|
+
/**
|
|
49
|
+
* Messages the input stream has yielded to the SDK but that haven't yet been
|
|
50
|
+
* confirmed by a first inbound SDK message. If a `--resume` is rejected (the
|
|
51
|
+
* session is gone — see the recovery in {@link runLoop}) we abandon that query
|
|
52
|
+
* and re-queue these so the fresh, resume-less query still sees the prompt
|
|
53
|
+
* instead of hanging on an empty queue. Cleared once the turn is live.
|
|
54
|
+
*/
|
|
55
|
+
inFlight = [];
|
|
48
56
|
inputResolver = null;
|
|
49
57
|
closed = false;
|
|
50
58
|
started = false;
|
|
@@ -140,142 +148,187 @@ export class ClaudeAgent extends BaseAgent {
|
|
|
140
148
|
async *inputStream() {
|
|
141
149
|
while (!this.closed) {
|
|
142
150
|
while (this.inputQueue.length) {
|
|
143
|
-
|
|
151
|
+
const msg = this.inputQueue.shift();
|
|
152
|
+
// Track as in-flight until the turn is confirmed live, so a resume
|
|
153
|
+
// failure can re-queue it (see runLoop's recovery).
|
|
154
|
+
this.inFlight.push(msg);
|
|
155
|
+
yield msg;
|
|
144
156
|
}
|
|
145
157
|
if (this.closed)
|
|
146
158
|
return;
|
|
147
159
|
await new Promise((r) => (this.inputResolver = r));
|
|
148
160
|
}
|
|
149
161
|
}
|
|
162
|
+
/**
|
|
163
|
+
* Build and launch the SDK query for the current turn, resuming
|
|
164
|
+
* `this.sessionId` when it's set. Extracted from runLoop so a recoverable
|
|
165
|
+
* resume miss can relaunch it once, fresh (with `this.sessionId` cleared).
|
|
166
|
+
*/
|
|
167
|
+
startQuery() {
|
|
168
|
+
return query({
|
|
169
|
+
prompt: this.inputStream(),
|
|
170
|
+
options: {
|
|
171
|
+
cwd: this.ctx.worktreePath,
|
|
172
|
+
resume: this.sessionId,
|
|
173
|
+
...(this.ctx.model ? { model: this.ctx.model } : {}),
|
|
174
|
+
// Reasoning-effort level (low/medium/high/xhigh/max). The CLI silently
|
|
175
|
+
// downgrades a level the selected model doesn't support, so passing it
|
|
176
|
+
// through is safe. Undefined → the model's own default.
|
|
177
|
+
...(this.ctx.effort
|
|
178
|
+
? { effort: this.ctx.effort }
|
|
179
|
+
: {}),
|
|
180
|
+
...(this.sdkEnv ? { env: { ...process.env, ...this.sdkEnv } } : {}),
|
|
181
|
+
// prompts.general (app config): append to Claude Code's own system
|
|
182
|
+
// prompt rather than replacing it. Omitted when empty.
|
|
183
|
+
...(this.ctx.appendSystemPrompt
|
|
184
|
+
? {
|
|
185
|
+
systemPrompt: {
|
|
186
|
+
type: "preset",
|
|
187
|
+
preset: "claude_code",
|
|
188
|
+
append: this.ctx.appendSystemPrompt,
|
|
189
|
+
},
|
|
190
|
+
}
|
|
191
|
+
: {}),
|
|
192
|
+
includePartialMessages: false,
|
|
193
|
+
// Workspace-scoped calls run without a phone round-trip; anything
|
|
194
|
+
// that escapes the worktree routes through canUseTool → the phone.
|
|
195
|
+
canUseTool: async (toolName, input, opts) => {
|
|
196
|
+
// AskUserQuestion is not a permission gate — it's an interactive
|
|
197
|
+
// multiple-choice prompt whose *answers* become the tool result. Emit
|
|
198
|
+
// a dedicated card, wait for the user's picks, and hand them back as
|
|
199
|
+
// updatedInput (SDK contract: { questions, answers }). No tool_use
|
|
200
|
+
// event, so it never renders as a collapsed generic tool call.
|
|
201
|
+
if (toolName === "AskUserQuestion") {
|
|
202
|
+
const requestId = opts.toolUseID;
|
|
203
|
+
const questions = extractQuestions(input);
|
|
204
|
+
this.emitEvent({ kind: "ask_question", requestId, questions });
|
|
205
|
+
this.emitEvent({ kind: "status", status: "awaiting_permission" });
|
|
206
|
+
const answer = await this.questionGate.wait(requestId);
|
|
207
|
+
this.emitEvent({ kind: "status", status: "running" });
|
|
208
|
+
if (!answer || (Object.keys(answer.answers).length === 0 && !answer.response)) {
|
|
209
|
+
return { behavior: "deny", message: "User did not answer the question." };
|
|
210
|
+
}
|
|
211
|
+
return {
|
|
212
|
+
behavior: "allow",
|
|
213
|
+
updatedInput: {
|
|
214
|
+
questions: input.questions ?? questions,
|
|
215
|
+
answers: answer.answers,
|
|
216
|
+
...(answer.response ? { response: answer.response } : {}),
|
|
217
|
+
},
|
|
218
|
+
};
|
|
219
|
+
}
|
|
220
|
+
const inputSummary = opts.title ?? summarize(toolName, input);
|
|
221
|
+
this.emitEvent({ kind: "tool_use", tool: toolName, inputSummary });
|
|
222
|
+
if (AUTO_APPROVE_WORKSPACE &&
|
|
223
|
+
isWorkspaceScoped(toolName, input, this.ctx.worktreePath)) {
|
|
224
|
+
return { behavior: "allow", updatedInput: input };
|
|
225
|
+
}
|
|
226
|
+
// A prior "Allow all" may already cover this category (same host,
|
|
227
|
+
// folder, or tool) — auto-approve without a phone round-trip.
|
|
228
|
+
if (this.ctx.allowlist?.isAllowed(toolName, input, this.ctx.worktreePath)) {
|
|
229
|
+
return { behavior: "allow", updatedInput: input };
|
|
230
|
+
}
|
|
231
|
+
const requestId = opts.toolUseID;
|
|
232
|
+
this.pendingCalls.set(requestId, { tool: toolName, input });
|
|
233
|
+
this.emitEvent({ kind: "status", status: "awaiting_permission" });
|
|
234
|
+
this.emitEvent({ kind: "permission", requestId, tool: toolName, inputSummary });
|
|
235
|
+
const decision = await this.gate.wait(requestId);
|
|
236
|
+
this.pendingCalls.delete(requestId);
|
|
237
|
+
this.emitEvent({ kind: "status", status: "running" });
|
|
238
|
+
return decision === "allow"
|
|
239
|
+
? { behavior: "allow", updatedInput: input }
|
|
240
|
+
: { behavior: "deny", message: "Denied from phone" };
|
|
241
|
+
},
|
|
242
|
+
},
|
|
243
|
+
});
|
|
244
|
+
}
|
|
150
245
|
async runLoop() {
|
|
151
246
|
const ws = this.ctx.workspaceId;
|
|
152
247
|
const model = this.ctx.model ?? "default";
|
|
153
248
|
const startMs = Date.now();
|
|
154
249
|
let firstMessageSeen = false;
|
|
250
|
+
// We relaunch the query at most once, to recover from a dead `--resume`.
|
|
251
|
+
let recoveredFromResume = false;
|
|
155
252
|
logger.info("model", "model request started", {
|
|
156
253
|
ws,
|
|
157
254
|
data: { model, resumed: Boolean(this.sessionId) },
|
|
158
255
|
});
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
this.emitEvent({ kind: "ask_question", requestId, questions });
|
|
197
|
-
this.emitEvent({ kind: "status", status: "awaiting_permission" });
|
|
198
|
-
const answer = await this.questionGate.wait(requestId);
|
|
199
|
-
this.emitEvent({ kind: "status", status: "running" });
|
|
200
|
-
if (!answer || (Object.keys(answer.answers).length === 0 && !answer.response)) {
|
|
201
|
-
return { behavior: "deny", message: "User did not answer the question." };
|
|
202
|
-
}
|
|
203
|
-
return {
|
|
204
|
-
behavior: "allow",
|
|
205
|
-
updatedInput: {
|
|
206
|
-
questions: input.questions ?? questions,
|
|
207
|
-
answers: answer.answers,
|
|
208
|
-
...(answer.response ? { response: answer.response } : {}),
|
|
209
|
-
},
|
|
210
|
-
};
|
|
211
|
-
}
|
|
212
|
-
const inputSummary = opts.title ?? summarize(toolName, input);
|
|
213
|
-
this.emitEvent({ kind: "tool_use", tool: toolName, inputSummary });
|
|
214
|
-
if (AUTO_APPROVE_WORKSPACE &&
|
|
215
|
-
isWorkspaceScoped(toolName, input, this.ctx.worktreePath)) {
|
|
216
|
-
return { behavior: "allow", updatedInput: input };
|
|
217
|
-
}
|
|
218
|
-
// A prior "Allow all" may already cover this category (same host,
|
|
219
|
-
// folder, or tool) — auto-approve without a phone round-trip.
|
|
220
|
-
if (this.ctx.allowlist?.isAllowed(toolName, input, this.ctx.worktreePath)) {
|
|
221
|
-
return { behavior: "allow", updatedInput: input };
|
|
222
|
-
}
|
|
223
|
-
const requestId = opts.toolUseID;
|
|
224
|
-
this.pendingCalls.set(requestId, { tool: toolName, input });
|
|
225
|
-
this.emitEvent({ kind: "status", status: "awaiting_permission" });
|
|
226
|
-
this.emitEvent({ kind: "permission", requestId, tool: toolName, inputSummary });
|
|
227
|
-
const decision = await this.gate.wait(requestId);
|
|
228
|
-
this.pendingCalls.delete(requestId);
|
|
229
|
-
this.emitEvent({ kind: "status", status: "running" });
|
|
230
|
-
return decision === "allow"
|
|
231
|
-
? { behavior: "allow", updatedInput: input }
|
|
232
|
-
: { behavior: "deny", message: "Denied from phone" };
|
|
233
|
-
},
|
|
234
|
-
},
|
|
235
|
-
});
|
|
236
|
-
this.emitEvent({ kind: "status", status: "running" });
|
|
237
|
-
for await (const msg of response) {
|
|
238
|
-
if (this.closed)
|
|
239
|
-
break;
|
|
240
|
-
if (!firstMessageSeen) {
|
|
241
|
-
firstMessageSeen = true;
|
|
242
|
-
// First inbound SDK message = the model is reachable and answering.
|
|
243
|
-
logger.info("model", "model reachable", {
|
|
256
|
+
for (;;) {
|
|
257
|
+
try {
|
|
258
|
+
const response = this.startQuery();
|
|
259
|
+
this.emitEvent({ kind: "status", status: "running" });
|
|
260
|
+
for await (const msg of response) {
|
|
261
|
+
if (this.closed)
|
|
262
|
+
break;
|
|
263
|
+
if (!firstMessageSeen) {
|
|
264
|
+
firstMessageSeen = true;
|
|
265
|
+
// Turn is live: the queued prompt was accepted, so nothing needs
|
|
266
|
+
// re-queuing if a *later* error occurs.
|
|
267
|
+
this.inFlight = [];
|
|
268
|
+
// First inbound SDK message = the model is reachable and answering.
|
|
269
|
+
logger.info("model", "model reachable", {
|
|
270
|
+
ws,
|
|
271
|
+
data: { model, latencyMs: Date.now() - startMs },
|
|
272
|
+
});
|
|
273
|
+
}
|
|
274
|
+
this.handleMessage(msg);
|
|
275
|
+
}
|
|
276
|
+
return;
|
|
277
|
+
}
|
|
278
|
+
catch (err) {
|
|
279
|
+
// Recoverable resume miss: the persisted session id isn't known to this
|
|
280
|
+
// backend — pruned, or (the reported bug) minted by a *different*
|
|
281
|
+
// provider before a mid-task model switch fed it to the wrong resume.
|
|
282
|
+
// Drop the resume, re-queue the prompt the abandoned query already
|
|
283
|
+
// pulled, and relaunch once as a fresh session instead of failing the
|
|
284
|
+
// turn. Only meaningful before the turn goes live; a mid-stream failure
|
|
285
|
+
// is a real error, not a resume problem.
|
|
286
|
+
if (!recoveredFromResume &&
|
|
287
|
+
!firstMessageSeen &&
|
|
288
|
+
!this.closed &&
|
|
289
|
+
this.sessionId &&
|
|
290
|
+
isSessionNotFound(err)) {
|
|
291
|
+
recoveredFromResume = true;
|
|
292
|
+
logger.warn("model", "resume session missing — restarting fresh", {
|
|
244
293
|
ws,
|
|
245
|
-
data: { model,
|
|
294
|
+
data: { model, sessionId: this.sessionId },
|
|
246
295
|
});
|
|
296
|
+
this.sessionId = undefined;
|
|
297
|
+
// Restore the messages the failed query's input stream had consumed so
|
|
298
|
+
// the fresh query sees them (else its input queue is empty and hangs).
|
|
299
|
+
this.inputQueue.unshift(...this.inFlight);
|
|
300
|
+
this.inFlight = [];
|
|
301
|
+
continue;
|
|
247
302
|
}
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
this.emitEvent({ kind: "error", message });
|
|
303
|
+
const cls = classifyModelError(err);
|
|
304
|
+
logger.error("model", "model request failed", {
|
|
305
|
+
ws,
|
|
306
|
+
data: {
|
|
307
|
+
model,
|
|
308
|
+
class: cls,
|
|
309
|
+
reachedModel: firstMessageSeen,
|
|
310
|
+
message: err instanceof Error ? err.message : String(err),
|
|
311
|
+
},
|
|
312
|
+
});
|
|
313
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
314
|
+
// A plan/session usage limit is a distinct, actionable case: strict
|
|
315
|
+
// matching keeps a transient 429/overload (also class `rate_limit`) out
|
|
316
|
+
// of the restart flow — only a real usage-limit notice surfaces the card.
|
|
317
|
+
const limit = detectUsageLimit(message, { strict: true });
|
|
318
|
+
if (limit) {
|
|
319
|
+
this.emitEvent({ kind: "limit", message: limit.message, resetAt: limit.resetAt });
|
|
320
|
+
}
|
|
321
|
+
else if (cls === "auth") {
|
|
322
|
+
// Rejected credential (expired/unrefreshable login or bad key): surface
|
|
323
|
+
// a dedicated event so the client can name the account and offer re-login.
|
|
324
|
+
this.emitEvent({ kind: "auth_failure", message });
|
|
325
|
+
}
|
|
326
|
+
else {
|
|
327
|
+
this.emitEvent({ kind: "error", message });
|
|
328
|
+
}
|
|
329
|
+
this.emitEvent({ kind: "status", status: "error" });
|
|
330
|
+
return;
|
|
277
331
|
}
|
|
278
|
-
this.emitEvent({ kind: "status", status: "error" });
|
|
279
332
|
}
|
|
280
333
|
}
|
|
281
334
|
handleMessage(msg) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude.js","sourceRoot":"","sources":["../../../src/agent/claude.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"claude.js","sourceRoot":"","sources":["../../../src/agent/claude.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,4 +5,12 @@
|
|
|
5
5
|
* tests against canned strings without touching the network.
|
|
6
6
|
*/
|
|
7
7
|
export type ModelErrorClass = "auth" | "rate_limit" | "timeout" | "network" | "unknown";
|
|
8
|
+
/**
|
|
9
|
+
* True when a backend rejected a `--resume` because the session id doesn't
|
|
10
|
+
* exist for it (e.g. "No conversation found with session ID: <uuid>"). This is
|
|
11
|
+
* recoverable: drop the resume and start a fresh session rather than failing the
|
|
12
|
+
* turn. Matches the Claude Agent SDK / CLI phrasings, staying narrow so an
|
|
13
|
+
* unrelated "not found" (a missing file, a 404 fetch) doesn't trip it.
|
|
14
|
+
*/
|
|
15
|
+
export declare function isSessionNotFound(err: unknown): boolean;
|
|
8
16
|
export declare function classifyModelError(err: unknown): ModelErrorClass;
|
|
@@ -4,6 +4,19 @@
|
|
|
4
4
|
* first-match-wins over the error's message + any numeric status, so it unit
|
|
5
5
|
* tests against canned strings without touching the network.
|
|
6
6
|
*/
|
|
7
|
+
/**
|
|
8
|
+
* True when a backend rejected a `--resume` because the session id doesn't
|
|
9
|
+
* exist for it (e.g. "No conversation found with session ID: <uuid>"). This is
|
|
10
|
+
* recoverable: drop the resume and start a fresh session rather than failing the
|
|
11
|
+
* turn. Matches the Claude Agent SDK / CLI phrasings, staying narrow so an
|
|
12
|
+
* unrelated "not found" (a missing file, a 404 fetch) doesn't trip it.
|
|
13
|
+
*/
|
|
14
|
+
export function isSessionNotFound(err) {
|
|
15
|
+
const msg = (err instanceof Error ? err.message : String(err ?? "")).toLowerCase();
|
|
16
|
+
return (/no conversation found with session id/.test(msg) ||
|
|
17
|
+
/(session|conversation)[^.]*\bnot found\b/.test(msg) ||
|
|
18
|
+
/no (session|conversation) (found|with)/.test(msg));
|
|
19
|
+
}
|
|
7
20
|
export function classifyModelError(err) {
|
|
8
21
|
const status = err && typeof err === "object" && "status" in err
|
|
9
22
|
? String(err.status)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-error.js","sourceRoot":"","sources":["../../../src/agent/model-error.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,MAAM,UAAU,kBAAkB,CAAC,GAAY;IAC7C,MAAM,MAAM,GACV,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,QAAQ,IAAI,GAAG;QAC/C,CAAC,CAAC,MAAM,CAAE,GAA2B,CAAC,MAAM,CAAC;QAC7C,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,GAAG,GAAG,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACnF,MAAM,GAAG,GAAG,GAAG,MAAM,IAAI,GAAG,EAAE,CAAC;IAE/B,IACE,6IAA6I,CAAC,IAAI,CAChJ,GAAG,CACJ,EACD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,wCAAwC,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,YAAY,CAAC;IAC5E,IAAI,iCAAiC,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IAClE,IAAI,qFAAqF,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACpG,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
1
|
+
{"version":3,"file":"model-error.js","sourceRoot":"","sources":["../../../src/agent/model-error.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAY;IAC5C,MAAM,GAAG,GAAG,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACnF,OAAO,CACL,uCAAuC,CAAC,IAAI,CAAC,GAAG,CAAC;QACjD,0CAA0C,CAAC,IAAI,CAAC,GAAG,CAAC;QACpD,wCAAwC,CAAC,IAAI,CAAC,GAAG,CAAC,CACnD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,GAAY;IAC7C,MAAM,MAAM,GACV,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,QAAQ,IAAI,GAAG;QAC/C,CAAC,CAAC,MAAM,CAAE,GAA2B,CAAC,MAAM,CAAC;QAC7C,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,GAAG,GAAG,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACnF,MAAM,GAAG,GAAG,GAAG,MAAM,IAAI,GAAG,EAAE,CAAC;IAE/B,IACE,6IAA6I,CAAC,IAAI,CAChJ,GAAG,CACJ,EACD,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,wCAAwC,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,YAAY,CAAC;IAC5E,IAAI,iCAAiC,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IAClE,IAAI,qFAAqF,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACpG,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
package/dist/src/models.d.ts
CHANGED
|
@@ -35,6 +35,12 @@ export declare const FALLBACK_MODELS: ModelInfo[];
|
|
|
35
35
|
* only accepts its plan default, so this is the safe cross-setup choice.
|
|
36
36
|
*/
|
|
37
37
|
export declare const CODEX_DEFAULT_MODEL = "codex";
|
|
38
|
+
/**
|
|
39
|
+
* A one-line tagline for the model selector, derived from the model's
|
|
40
|
+
* family/provider. Keeps the taglines in one place so discovered and fallback
|
|
41
|
+
* entries read the same. Returns undefined when nothing sensible applies.
|
|
42
|
+
*/
|
|
43
|
+
export declare function describeModel(m: ModelInfo): string | undefined;
|
|
38
44
|
/**
|
|
39
45
|
* The full catalog surfaced to clients: live-discovered online models (Claude /
|
|
40
46
|
* Codex / OpenRouter, scoped to the last 12 months) plus every locally-installed
|
package/dist/src/models.js
CHANGED
|
@@ -96,6 +96,45 @@ export const CODEX_DEFAULT_MODEL = "codex";
|
|
|
96
96
|
function fallbackFor(provider) {
|
|
97
97
|
return FALLBACK_MODELS.filter((m) => m.provider === provider);
|
|
98
98
|
}
|
|
99
|
+
/**
|
|
100
|
+
* A one-line tagline for the model selector, derived from the model's
|
|
101
|
+
* family/provider. Keeps the taglines in one place so discovered and fallback
|
|
102
|
+
* entries read the same. Returns undefined when nothing sensible applies.
|
|
103
|
+
*/
|
|
104
|
+
export function describeModel(m) {
|
|
105
|
+
const s = m.id.toLowerCase();
|
|
106
|
+
switch (m.provider) {
|
|
107
|
+
case "claude":
|
|
108
|
+
if (/fable|mythos/.test(s))
|
|
109
|
+
return "For your toughest challenges";
|
|
110
|
+
if (/opus/.test(s))
|
|
111
|
+
return "For complex tasks";
|
|
112
|
+
if (/sonnet/.test(s))
|
|
113
|
+
return "Most efficient for everyday tasks";
|
|
114
|
+
if (/haiku/.test(s))
|
|
115
|
+
return "Fastest for quick answers";
|
|
116
|
+
return undefined;
|
|
117
|
+
case "codex":
|
|
118
|
+
if (s === "codex")
|
|
119
|
+
return "Uses your account's default model";
|
|
120
|
+
if (/mini/.test(s))
|
|
121
|
+
return "Faster, lighter reasoning";
|
|
122
|
+
return "OpenAI's agentic coder";
|
|
123
|
+
case "openrouter":
|
|
124
|
+
return "Routed via OpenRouter";
|
|
125
|
+
case "ollama":
|
|
126
|
+
return "Runs locally on your machine";
|
|
127
|
+
default:
|
|
128
|
+
return undefined;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
/** Attach a derived `description` when the entry doesn't already carry one. */
|
|
132
|
+
function withDescription(m) {
|
|
133
|
+
if (m.description)
|
|
134
|
+
return m;
|
|
135
|
+
const description = describeModel(m);
|
|
136
|
+
return description ? { ...m, description } : m;
|
|
137
|
+
}
|
|
99
138
|
/**
|
|
100
139
|
* The full catalog surfaced to clients: live-discovered online models (Claude /
|
|
101
140
|
* Codex / OpenRouter, scoped to the last 12 months) plus every locally-installed
|
|
@@ -112,7 +151,7 @@ export function allModels() {
|
|
|
112
151
|
...(codex.length ? codex : fallbackFor("codex")),
|
|
113
152
|
...(openrouter.length ? openrouter : fallbackFor("openrouter")),
|
|
114
153
|
...ollamaModels(),
|
|
115
|
-
];
|
|
154
|
+
].map(withDescription);
|
|
116
155
|
}
|
|
117
156
|
/** The model that backs new workspaces when a client doesn't pick one. */
|
|
118
157
|
export function defaultModel() {
|
package/dist/src/models.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/models.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAGH,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EACL,eAAe,EACf,sBAAsB,GACvB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EACL,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAG5B,wEAAwE;AACxE,MAAM,CAAC,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;AAElD,gFAAgF;AAChF,SAAS,iBAAiB,CAAC,CAAY;IACrC,MAAM,OAAO,GAAG,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACvC,OAAO,OAAO;QACZ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,qBAAqB,CAAC,OAAO,CAAC,EAAE;QAClE,CAAC,CAAC,CAAC,CAAC;AACR,CAAC;AACD,SAAS,gBAAgB,CAAC,CAAY;IACpC,MAAM,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACtC,OAAO,OAAO;QACZ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,oBAAoB,CAAC,OAAO,CAAC,EAAE;QACjE,CAAC,CAAC,CAAC,CAAC;AACR,CAAC;AAED;;;;GAIG;AACH,MAAM,eAAe,GAAgB;IACnC,kCAAkC;IAClC,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE;IACtF,EAAE,EAAE,EAAE,gBAAgB,EAAE,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,EAAE;IACrE,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,QAAQ,EAAE;IACvE,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,QAAQ,EAAE;IACvE,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,QAAQ,EAAE;IACvE,EAAE,EAAE,EAAE,mBAAmB,EAAE,KAAK,EAAE,mBAAmB,EAAE,QAAQ,EAAE,QAAQ,EAAE;IAC3E,EAAE,EAAE,EAAE,mBAAmB,EAAE,KAAK,EAAE,mBAAmB,EAAE,QAAQ,EAAE,QAAQ,EAAE;IAC3E,EAAE,EAAE,EAAE,kBAAkB,EAAE,KAAK,EAAE,kBAAkB,EAAE,QAAQ,EAAE,QAAQ,EAAE;CAC1E,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAc,CAAC,CAAC,CAAC;AAEhD,MAAM,cAAc,GAAgB;IAClC,wEAAwE;IACxE,2EAA2E;IAC3E,mEAAmE;IACnE,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,yBAAyB,EAAE,QAAQ,EAAE,OAAO,EAAE;IACpE,EAAE,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE;IAC9D,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE;IAClD,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE;IAC5D,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,OAAO,EAAE;IAC7D,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE;CACpD,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAc,CAAC,CAAC,CAAC;AAE/C,MAAM,mBAAmB,GAAiB;IACxC,iEAAiE;IACjE,8EAA8E;IAC9E,mEAAmE;IACnE,6CAA6C;IAC7C,EAAE,EAAE,EAAE,yBAAyB,EAAE,KAAK,EAAE,kBAAkB,EAAE,QAAQ,EAAE,YAAY,EAAE;IACpF,EAAE,EAAE,EAAE,+BAA+B,EAAE,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,YAAY,EAAE;IACzF,EAAE,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE;IAClE,EAAE,EAAE,EAAE,kBAAkB,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,YAAY,EAAE;CACzD,CAAC;AAElB,MAAM,CAAC,MAAM,eAAe,GAAgB;IAC1C,GAAG,eAAe;IAClB,GAAG,cAAc;IACjB,GAAG,mBAAmB;CACvB,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,OAAO,CAAC;AAE3C,6EAA6E;AAC7E,SAAS,WAAW,CAAC,QAAuB;IAC1C,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;AAChE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,SAAS;IACvB,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,YAAY,EAAE,CAAC;IAC7B,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAC;IACtC,OAAO;QACL,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QACnD,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAChD,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAC/D,GAAG,YAAY,EAAE;KAClB,CAAC;
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/models.ts"],"names":[],"mappings":"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"}
|